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()方法。
290 次浏览
借助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文件,... 阅读更多
568 次浏览
隐式等待是执行中每个测试步骤的默认等待时间。因此,如果我们将隐式等待设置为十秒钟,则每个测试步骤将等待该时间量以执行操作,然后移动到下一步。隐式等待是动态等待,这意味着如果等待时间为十秒钟,并且将在其上执行下一个操作的web元素在第五秒可用,则控制将立即移动到下一个测试步骤,而不是等待完整的十秒钟。但是,如果元素... 阅读更多
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"; ... 阅读更多