560 次浏览
我们可以使用invocationCount辅助属性多次执行特定测试方法(例如5次)。示例@Test public void PaymentDetails(){ System.out.println("支付详情验证成功"); } @Test(invocationCount=5) public void LoginAdmin(){ System.out.println("管理员登录成功"); } @Test public void LeaseDetails(){ System.out.println("租赁详情验证成功"); }在Java类文件中,将invocationCount设置为5的LoginAdmin()方法将导致“管理员登录成功”消息在控制台上打印五次。
265 次浏览
我们可以使用@BeforeMethod和@AfterMethod注解在TestNG中为每个测试运行前提条件方法和后置条件方法。示例@BeforeMethod public void prerequisite(){ System.out.println("每个测试之前运行"); } @AfterMethod public void postcondition(){ System.out.println("每个测试之后运行 "); } @Test public void loanPay(){ System.out.println("贷款支付成功"); }在Java类文件中,带有@BeforeMethod的prerequisite()方法将被执行,这被称为每个测试方法的预条件。然后执行loanPay(),最后执行带有@AfterMethod的postcondition()方法。
1K+ 次浏览
我们在TestNG中使用正则表达式来处理名称符合特定模式的一组测试方法。示例Testng xml文件。 所有以Payment开头的测试方法都将从回归套件中排除。示例@Test public void PaymentHistory(){ System.out.println("支付历史记录验证成功"); } @Test public void Login(){ System.out.println("登录成功"); } @Test public void PaymentDefault(){ System.out.println("支付默认值验证成功"); }Login()将被执行,但所有以Payment开头的测试方法都将被排除在外。这是使用正则表达式(Payment.*)实现的。
587 次浏览
我们可以通过为每个测试方法赋予优先级来设置测试用例的执行顺序。优先级较低的测试方法先运行,然后执行优先级较高的测试方法。示例@Test (priority = 1) public void verifyTravel(){ System.out.println("旅行记录成功 "); } @Test (priority = 2) public verifyIncome(){ System.out.println ("收入记录成功"); }在Java类文件中,verifyTravel()将首先运行,然后是verifyIncome()。
我们可以通过在执行中包含一组测试用例来运行特定的一组测试用例。示例带有组的Testng xml文件。 要从测试用例集中运行一组测试用例,我们必须在testng xml文件中定义。此处testNG xml包含要在执行中包含的组Smoke。示例@Test(groups={"Smoke"}) public void Payment(){ System.out.println("支付成功"); }在Java类文件中,只有具有Smoke组的测试方法将在整个回归套件中运行。
363 次浏览
要在TestNG中忽略特定测试方法的执行,可以使用enabled辅助属性。此属性必须设置为false才能忽略测试方法的执行。示例Java类文件。@Test(enabled=false) public void verifyRepay(){ System.out.println("还款成功"); } @Test public void Login(){ System.out.println("登录成功 "); } @Test public verifyHistory(){ System.out.println ("历史记录验证成功"); }此处,verifyRepay()方法将在执行期间被忽略。
289 次浏览
可以使用dependsOnMethods辅助属性使特定测试方法的执行依赖于另一个测试方法。示例@Test(dependsOnMethods={"Payment"}) public void verifyLoan(){ System.out.println("贷款支付成功"); } @Test public void Payment(){ System.out.println("支付成功 "); } @Test public verifyTransaction(){ System.out.println ("交易验证"); }在Java类文件中,只有在Payment()方法成功运行后,才会执行verifyLoan()方法。但是verifyTransaction()方法独立运行,无需执行预条件测试方法。
2K+ 次浏览
testng.xml文件有以下多种用途:按组执行测试用例。可以包含或排除测试方法在执行中。可以触发多个Java类文件中的多个测试用例的执行。包含文件夹、类、方法的名称。能够触发并行执行。可以包含或排除属于组的测试方法在执行中。示例TestNG.xml文件 此处根据xml文件,... 阅读更多
567 次浏览
隐式等待是我们执行中每个测试步骤的默认等待时间。因此,如果我们将隐式等待设置为十秒钟,则每个测试步骤将等待该时间量以执行操作,然后移动到下一步。隐式等待是动态等待,这意味着如果等待时间是十秒钟,并且下一个操作要作用到的网页元素在第五秒可用,则控制将立即移动到下一步,而不是等待完整的十秒钟。但是,如果元素... 阅读更多
8K+ 次浏览
get() 方法和 navigate() 方法的区别如下所示。序号get()navigate()1它负责加载页面并等待页面加载完成。它只负责重定向页面,然后立即返回。2它无法跟踪浏览器的历史记录。它跟踪浏览器历史记录,并且可以在浏览器中执行前进和后退操作。示例使用get()。import org.openqa.selenium.By; import org.openqa.selenium.Keys; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.util.concurrent.TimeUnit; import java.util.List; public class LaunchBrw { public static void main(String[] args) { System.setProperty("webdriver.chrome.driver", "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe"); WebDriver driver = new ChromeDriver(); String url = "https://tutorialspoint.com/index.htm"; ... 阅读更多