2

selenium 中的 JUnit 3、JUnit 4、TestNG 有什么区别,这三个测试框架中 selenium 的实现方式有何不同?

谁能解释清楚..

提前致谢..

4

1 回答 1

6
  1. TestNG 处理测试用例之间的依赖关系。 如果一个测试用例失败导致一组测试用例失败,它会跳过该组并执行测试套件的其余部分。依赖于失败测试用例的组被报告为已跳过且未失败。

    在 Junit 中,一个测试用例失败可能会导致测试套件中的一堆测试用例失败。没有跳过依赖测试用例集的选项。依赖的测试用例也被报告为失败。例如,假设有一个测试用例来测试登录,接下来的 10 个测试用例需要在登录后执行一个事务。如果登录测试用例失败,其他 10 个测试用例也将失败。

  2. 在 TestNG 中可以定义组。组是测试套件的特定子集。我们可以选择只运行测试套件的特定子集,比如与数据库相关的测试用例,而不是运行整个测试套件。这可以如下完成:

    在测试用例中,我们定义了两组 DBTestcase 并弃用如下:

    @Test(groups = {"DBTestcase", "deprecated"})
    public void testMethod2()
    {
    
    }
    

    在 Junit 中很长一段时间都无法运行特定的测试用例子集。我们可以运行整个套件或单独运行每个测试用例。Junit 4.8 引入了一个名为“Categories”的新特性来克服这个限制。然而,在 TestNG 中配置组要容易得多。

    因此,如果您有 junit 3.x 系列,则无法定义组。但是 junit 4.8 及更高版本支持它。

于 2011-08-09T21:25:19.503 回答