Questions tagged «testng»

12
JUnit与TestNG [关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow 的主题。 10个月前关闭。 改善这个问题 在工作中,我们目前仍在使用JUnit 3运行测试。我们一直在考虑切换到JUnit 4来编写新的测试,但是一段时间以来我一直在关注TestNG。你们都对JUnit 4或TestNG有什么经验,对于大量测试似乎更有效?灵活地编写测试对我们也很重要,因为我们的功能测试涵盖了广泛的方面,需要以多种方式编写才能获得结果。 旧测试不会被重写,因为它们做得很好。我希望在新的测试中看到的是,可以灵活地编写测试,自然断言,分组和易于分布的测试执行方式。
125 java  testing  junit  testng 

16
@BeforeClass和继承-执行顺序
我有一个抽象基类,用作我的单元测试(TestNG 5.10)的基础。在该类中,我将初始化测试的整个环境,设置数据库映射等。此抽象类具有一个带有@BeforeClass注释的方法,该方法可以进行初始化。 接下来,我用具有@Test方法以及@BeforeClass方法的特定类扩展该类。这些方法对环境进行类特定的初始化(例如,将一些记录放入数据库中)。 如何执行带@BeforeClass注释的方法的特定顺序?我需要先执行抽象基类中的那些,然后再执行扩展类中的那些。 例: abstract class A { @BeforeClass doInitialization() {...} } class B extends A { @BeforeClass doSpecificInitialization() {...} @Test doTests() {...} } 预期订单: A.doInitialization B.doSpecificInitialization B.doTests 实际订单: B.doSpecificInitialization // <- crashes, as the base init is missing (A.doInitialization // <---not executed B.doTests) // <-/

6
JUnit 4与TestNG-更新2013-2014 [关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 5年前关闭。 改善这个问题 JUnit 4和TestNG曾经具有可比性。这两个测试框架的优缺点是什么?

17
TestNG中测试的执行顺序
如何自定义TestNG中测试的执行顺序? 例如: public class Test1 { @Test public void test1() { System.out.println("test1"); } @Test public void test2() { System.out.println("test2"); } @Test public void test3() { System.out.println("test3"); } } 在上述套件中,测试的执行顺序是任意的。对于一次执行,输出可能是: test1 test3 test2 如何按照测试的编写顺序执行测试?

3
Mockito嘲笑本地决赛,但在詹金斯失败
我已经为静态方法编写了一些单元测试。静态方法仅接受一个参数。参数的类型是最终类。在代码方面: public class Utility { public static Optional<String> getName(Customer customer) { // method's body. } } public final class Customer { // class definition } 因此,对于Utility该类,我创建了一个测试类,UtilityTests在其中为该方法编写了测试getName。单元测试框架为TestNG,而使用的模拟库为Mockito。因此,典型的测试具有以下结构: public class UtilityTests { @Test public void getNameTest() { // Arrange Customer customerMock = Mockito.mock(Customer.class); Mockito.when(...).thenReturn(...); // Act Optional<String> name = Utility.getName(customerMock); // Assert …

1
重新运行完整的类,而不仅仅是在TestNG中运行@Test
我浏览了几天的stackoverflow,试图找到如何重新运行整个测试类,而不仅仅是@Test一步。许多人说TestNG和并不支持此功能IRetryAnalyzer,而有些人已经发布了变通方法,但实际上并不起作用。有没有人设法做到这一点?只是为了阐明原因,以避免出现故意不支持的答案:TestNG不仅是针对开发人员的工具。这也被sw测试人员用于e2e测试。E2e测试可以包含依赖于前一个步骤的步骤。因此,是的,重新运行整个测试类是有效的,而不是简单的@Test,可以通过轻松地完成IRetryAnalyzer。 我要实现的一个示例是: public class DemoTest extends TestBase { @Test(alwaysRun = true, description = "Do this") public void testStep_1() { driver.navigate().to("http://www.stackoverflow.com"); Assert.assertEquals(driver.getCurrentUrl().contains("stackoverflow)")); } @Test(alwaysRun = true, dependsOnMethods = "testStep_1", description = "Do that") public void testStep_2() { driver.press("button"); Assert.assertEquals(true, driver.elementIsVisible("button")); } @Test(alwaysRun = true, dependsOnMethods = "testStep_2", description = "Do something …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.