0

我在运行 @Test 时遇到问题,以便在单个测试中多次运行。基本上我的框架是这样设计的,我在不同的类中有一些@Test 方法,我调用它们以便我想在我的 xml 文件中创建一个基本的测试用例。但是当我尝试调用相同的@Test 方法时,它没有按我想要的顺序运行并且只运行一次

例如:我有两节课

 class A{
     @Test ({parameter blah })
     public void foo(){}
 }

  class B{
    @Test ({parameter bloo})
    public void doo(){}
  }

我想通过以下方式调用 xml:-

    <test> demotest
    <class name="A"><parameter name="blah" value="somevalue"</class>
    <class name="B"><parameter name="bloo" value="xyzvalue"</class>
    <class name="A"><parameter name="blah" value="somethervalue"</class>
     </test>

我想要输出 -

   somevalue
   xyzvalue
   someothervalue

但它只运行一次具有某个其他值的 A 类(我假设它正在获取关于字母顺序的参数)。

我怎样才能让我的@test 方法按照我想要的在同一个测试用例中使用两个差异参数运行两次,它只是具有不同输入的相同方法,所以我不想包含单独的方法/类。

让我知道是否需要更多信息

4

2 回答 2

0

我知道这里有限制,我们不能在单个测试中调用相同的方法两次,我创建了一种解决方法,将临时值存储在 Excel 表中并检索它们并创建相互依赖的测试组,知道这是一种不好的做法,但是帮不上忙!!。希望 testng 能解决这个限制

于 2018-12-25T13:18:23.690 回答
0

使用保留顺序,然后测试将按指定运行。

  <test name="Test" preserve-order="true">

在同一测试中两次运行同一类也是不可能的。

于 2018-12-25T06:07:05.800 回答