Libraries & Frameworks

Test cases for buttons ensure that these essential user interface elements function correctly and consistently across various scenarios. Whether dealing with submit buttons, toggle buttons, or action buttons, thorough testing is crucial for maintaining the integrity of any application. This article will guide you through the process of writing comprehensive test cases for buttons, covering…
The post How To Write Test Cases For Button  appeared first on Software Testing Material.

This article will guide you through the process of creating effective test cases for headers, covering key aspects such as UI and functional test cases. By mastering these techniques, you’ll be able to develop robust test cases that thoroughly validate the usability of headers in your web projects. The header serves as the gateway to…
The post How To Write Test Cases For Header appeared first on Software Testing Material.

Test cases for footers ensure that this often-overlooked yet important component of websites functions correctly and consistently across various scenarios. Footers typically contain essential information such as copyright notices, contact details, and secondary navigation, making their proper functionality crucial for user experience and legal compliance. This article will guide you through the process of developing…
The post How To Write Test Cases For Footer appeared first on Software Testing Material.

Playwright is an automation testing tool that has been gaining a lot of traction in the QA community. Despite being the latest tool compared to Selenium and Cypress, Playwright has become a popular choice today. Being a QA manager, you might be in the position to choose an automation tool for your testing needs or
The post A Quick Playwright Overview for QA Managers appeared first on Codoid.

I referred to one of the answers posted in this forum and when I attempted to run following code

NetworkConnection mobileDriver = (NetworkConnection) appiumDriver;
if (mobileDriver.getNetworkConnection() != ConnectionType.AIRPLANE_MODE) {
// enabling Airplane mode
mobileDriver.setNetworkConnection(ConnectionType.AIRPLANE_MODE);
}

I get following exception:

java.lang.ClassCastException: io.appium.java_client.ios.IOSDriver cannot be cast to org.openqa.selenium.mobile.NetworkConnection

Here is the link to the post which I had referred to How can I switch ON/OFF AIRPLANE mode and wifi using Appium?

Welcome to our ARIA Testing Tutorial! In the ever-evolving landscape of web development, creating accessible websites is more important than ever. ARIA, which stands for Accessible Rich Internet Applications, is a powerful set of attributes that can significantly enhance the accessibility of web content, especially for users relying on assistive technologies. This tutorial will guide…
The post ARIA Testing Tutorial: Enhance Web Accessibility in 2024 appeared first on Software Testing Material.

I have customized an XPath for adding a product which has discount 30% for 2. Now I am facing problem while adding this into the cart.

package sample;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;

import org.openqa.selenium.By;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;

public class Coop_angebote {

public static void main(String[]args) throws InterruptedException{

System.setProperty(“webdriver.chrome.driver”,”C:\Chrome\chromedriver.exe”);
ChromeOptions options = new ChromeOptions();
Map<String, Object> prefs = new HashMap<String, Object>();
prefs.put(“credentials_enable_service”, false);
prefs.put(“password_manager_enabled”, false);
options.setExperimentalOption(“prefs”, prefs);
options.addArguments(“start-maximized”);
options.addArguments(“disable-infobars”);
WebDriver driver = new ChromeDriver(options);
driver.manage().timeouts().implicitlyWait(50, TimeUnit.SECONDS);

// For Login Functionality

driver.get(“https://www.coopathome.ch/de?lang=de”);
driver.findElement(By.xpath(“html/body/div[2]/div/div[2]/nav[2]/div/ul/li[2]/a[1]/span”)).click();
Thread.sleep(2000);
driver.findElement(By.xpath(“html/body/div[1]/div[2]/div/div/div/div/div/div/form/div[3]/div/div/input”)).sendKeys(“USERNAME”);
driver.findElement(By.xpath(“html/body/div[1]/div[2]/div/div/div/div/div/div/form/div[4]/div[2]/div/input”)).sendKeys(“PASSWORD”);
driver.findElement(By.xpath(“html/body/div[1]/div[2]/div/div/div/div/div/div/form/div[6]/button”)).click();
Thread.sleep(2000);
driver.findElement(By.xpath(“html/body/div[3]/div/div[2]/div[2]/header/a”)).click();
JavascriptExecutor jse = (JavascriptExecutor)driver;
jse.executeScript(“window.scrollBy(0,800)”, “”);

Thread.sleep(1000);

JavascriptExecutor jse1=(JavascriptExecutor)driver;
jse1.executeScript(“window.scrollBy(0,400)”, “”);

Thread.sleep(1000);

JavascriptExecutor jse2=(JavascriptExecutor)driver;
jse2.executeScript(“window.scrollBy(0,800)”, “”);

Thread.sleep(1000);

JavascriptExecutor jse3=(JavascriptExecutor)driver;
jse3.executeScript(“window.scrollBy(0,800)”, “”);

Thread.sleep(1000);

JavascriptExecutor jse4=(JavascriptExecutor)driver;
jse4.executeScript(“window.scrollBy(0,800)”, “”);

Thread.sleep(1000);

JavascriptExecutor jse5=(JavascriptExecutor)driver;
jse5.executeScript(“window.scrollBy(0,250)”, “”);

Thread.sleep(1000);

JavascriptExecutor jse6=(JavascriptExecutor)driver;
jse6.executeScript(“window.scrollBy(0,250)”, “”);

//driver.findElement(By.xpath(“//*[contains(text(),’30% ab 2′)]”)).click();

List<WebElement> var=driver.findElements(By.xpath(“//*[contains(text(),’30% ab 2′)]”));
System.out.println(var.size());

for(int i = 0;i<=var.size();i++){

List<String> li = new ArrayList<String>();
var.get(i).getText().trim();
System.out.println(“ACTUAL:'”+ var.get(i).getText().trim() + “‘”);
if(var.get(i).getText().trim().equals(“30% ab 2”))
{
driver.findElement(By.xpath(“//*[@class=’btn__inner’]”)).click();
Thread.sleep(1000);
System.out.println(“IN iF:”);
}

How can I add main class in eclipse cucumber project. I am running cucumber feature file and using TestNG but getting error: “cannot find class in classpath” and as a resolution of this I am geeting solution as add main class. Can anyone have another solution related to it.

error: org.testng.TestNGException:
Cannot find class in classpath: crossfit.test.CroddfitRunner
at org.testng.xml.XmlClass.loadClass(XmlClass.java:77)
at org.testng.xml.XmlClass.init(XmlClass.java:69)
at org.testng.xml.XmlClass.<init>(XmlClass.java:55)
at org.testng.xml.TestNGContentHandler.startElement(TestNGContentHandler.java:575)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.emptyElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(Unknown Source)
at org.testng.xml.XMLParser.parse(XMLParser.java:38)
at org.testng.xml.SuiteXmlParser.parse(SuiteXmlParser.java:16)
at org.testng.xml.SuiteXmlParser.parse(SuiteXmlParser.java:9)
at org.testng.xml.Parser.parse(Parser.java:152)
at org.testng.xml.Parser.parse(Parser.java:233)
at org.testng.TestNG.parseSuite(TestNG.java:295)
at org.testng.TestNG.initializeSuitesAndJarFile(TestNG.java:348)
at org.testng.TestNG.initializeEverything(TestNG.java:995)
at org.testng.remote.support.RemoteTestNG6_12.initialize(RemoteTestNG6_12.java:22)
at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:97)
at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:251)
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:77)

Test Guild – Automation Testing Tools Community
8 Special Ops Principles for Automation Testing
I recently had a conversation, with Alex “ZAP” Chernyak about his journey to the United States and founding a company focused on test automation. For those unfamiliar Alex is the mastermind behind ZAPTEST. His unique perspective in this field is shaped by his experiences in the Defense Forces (IDF) and his entrepreneurial path as an
You’re reading 8 Special Ops Principles for Automation Testing, originally posted on Test Guild – Automation Testing Tools Community – and copyrighted by Joe Colantonio

Welcome to our Accessibility Color Contrast Testing Tutorial! In the world of web design, color isn’t just about aesthetics—it’s a crucial element of accessibility. Proper color contrast ensures that text and images are easily visible to all users, including those with visual impairments. This guide will walk you through the essentials of accessibility color contrast…
The post Accessibility Color Contrast Testing: A Complete Guide for 2024 appeared first on Software Testing Material.

Welcome to our Text Alternatives Testing Tutorial! In the digital age, where visual content dominates the web, ensuring accessibility for all users is crucial. Text alternatives, often called “alt text,” play a vital role in making non-text content accessible to everyone, including people using screen readers or those with slow internet connections. This guide will…
The post Text Alternatives Testing: Boost Web Accessibility in 2024 appeared first on Software Testing Material.

Welcome to our Keyboard Accessibility Testing Tutorial! In today’s digital world, creating websites that are accessible to all users is not just a best practice—it’s a necessity. Keyboard accessibility is a crucial aspect of web accessibility, ensuring that people who can’t use a mouse or prefer keyboard navigation can interact with your website effectively. This…
The post Keyboard Accessibility Testing: Enhance Web Usability in 2024 appeared first on Software Testing Material.

Sometimes app crashes. But Selenium can only handle “noSuchElementException” or “TimeOutException”. Does Appium runs a listener or something which tracks if the app is crashed? I really need the internal exception handling with selenium, like: “Object Not set to an instance of object” exception and such things. Is there a way to listen Android internal exceptions?
if there is not a way to do that, what is the way to do it? I do it with finding the stopped” text. but I don’t think it is the right way to handle app crash. Becasue sometimes app crashes but not shows the app stopped dialog, It just come back to main screen of Android.
P.S: I understand the concept of “TakesScreenshot” interface when test failed.

I have few java packages as part of Selenium, Java, Cucumber, Maven automation framework which all projects use. If I create .jar file of it and place it in a separate project/folder in TFS Git repository, then all project can use it as a dependency in pom.xml.
If I want to change some code and commit/push to main branch using eGit plugin in Eclipse, then will all other projects be able to “Fetch from upstream” and get latest changes.
OR
Do I need to host the .jar file on JFrog artifactory (corporate). Then make changes, compile the .jar file and then when projects do “Update Maven”, then they will get updated copy of the jar classes.
How can I achieve this without uploading .jar in artifactory?

Welcome to our WCAG Testing Tutorial, your guide to mastering web accessibility. WCAG, or Web Content Accessibility Guidelines, are the gold standard for making websites usable by everyone, including people with disabilities. In this comprehensive guide, we’ll explore what WCAG testing is and why it’s crucial for your website’s success. We’ll dive into who needs…
The post WCAG Testing Tutorial: Master Web Accessibility in 2024 appeared first on Software Testing Material.