TestNG XML - нужен сценарий Bean Shell для включения нескольких имен групп и исключения нескольких имен методов - PullRequest
0 голосов
/ 27 февраля 2019

Я узнал, что приведенный ниже скрипт работает с несколькими именами групп.

      <method-selectors>
             <method-selector>
                   <script language="beanshell"><![CDATA[          
                   groupNamesToRun = System.getProperty("groupToRun");
                   if ((groupNamesToRun == null) || (groupNamesToRun == "")) {
                          return true;
                   }
                   else
                   {
                          StringTokenizer groupsList = new StringTokenizer(groupNamesToRun, ",");
                          while (groupsList.hasMoreTokens()) {
                                 if (groups.containsKey(groupsList.nextToken()))
                                        return true;
                                 }
                                        return false;
                          }
                   }
                   ]]>
                   </script>
             </method-selector>
      </method-selectors>

Где как, приведенный ниже скрипт работает для исключения нескольких имен методов.

<method-selectors>
            <method-selector>
                <script language="beanshell">
                    <![CDATA[
                    methodPattern = "method1,method2";
                           if ((methodPattern == null) || (methodPattern == "")) {
                                  return true;
                           }
                           else
                           {
                                  StringTokenizer methodsList = new StringTokenizer(methodPattern, ",");

                                  while (methodsList.hasMoreTokens()) {
                                         methodName = methodsList.nextToken();
                                         if (testngMethod.getMethodName().contains(methodName))
                                                return false;
                                         }
                                                return true;
                                  }
                           }
                ]]>
                </script>
            </method-selector>
        </method-selectors>

Но,Мне трудно реализовать сценарий Bean Shell, включающий несколько имен групп и исключающий несколько имен методов.

Аналогичным образом, нужен сценарий и для следующих комбинаций.

  1. Включить несколькоимена групп и включают несколько имен методов
  2. Исключение нескольких имен групп и включение нескольких имен методов
  3. Исключение нескольких имен групп и исключение нескольких имен методов
...