Я создал тест testng с использованием selenium webdriver и java. Теперь я не хочу делиться своим кодом с разными пользователями, но я хочу, чтобы мой код запускался разными пользователями, используя jar или war file. Может ли кто-нибудь помочь мне с этим. Можно ли запустить тест без обмена Java-кодом testNG?Запустить тестовый пакет с использованием файла jar или war
ответ
Я не получил возможность работать с Maven, но это должно быть возможно и с maven
Позвольте мне рассказать вам идею, беря пример с использованием муравей
Предположим, вы работаете тесты с использованием муравей с ниже (изменения образца файла в соответствии с вашими потребностями) build.xml файл
<project name="TestNG Demo" default="clean" basedir=".">
<!-- ========== Initialize Properties =================================== -->
<property environment="env"/>
<property name="ws.home" value="${basedir}"/>
<property name="ws.jars" value="${ws.home}/Jars"/>
<property name="test.dest" value="${ws.home}/build"/>
<property name="test.src" value="${ws.home}/src"/>
<property name="ng.result" value="test-output"/>
<target name="setClassPath" unless="test.classpath">
<path id="classpath_jars">
<fileset dir="${ws.jars}" includes="**/*.jar"/>
<pathelement path="${ws.jars}"/>
</path>
<pathconvert pathsep=":"
property="test.classpath"
refid="classpath_jars"/>
</target>
<target name="init" depends="setClassPath">
<tstamp>
<format property="start.time" pattern="MM/dd/yyyy hh:mm aa" />
</tstamp>
<condition property="ANT"
value="${env.ANT_HOME}/bin/ant.bat"
else="${env.ANT_HOME}/bin/ant">
<os family="windows" />
</condition>
<taskdef name="testng" classpath="${test.classpath}"
classname="org.testng.TestNGAntTask" />
</target>
<!-- all -->
<target name="all">
</target>
<!-- clean -->
<target name="clean">
<delete dir="${test.dest}"/>
</target>
<!-- compile -->
<target name="compile" depends="init, clean" >
<delete includeemptydirs="true" quiet="true">
<fileset dir="${test.dest}" includes="**/*"/>
</delete>
<echo message="making directory..."/>
<mkdir dir="${test.dest}"/>
<echo message="classpath------: ${test.classpath}"/>
<echo message="compiling..."/>
<javac
includeantruntime="false"
debug="true"
destdir="${test.dest}"
srcdir="${test.src}"
target="1.6"
classpath="${test.classpath}"
>
</javac>
</target>
<!-- build -->
<target name="build" depends="init">
</target>
<!-- run -->
<target name="run" >
<testng classpath="${test.classpath}:${test.dest}" suitename="suite">
<xmlfileset dir="${ws.home}" includes="testng.xml"/>
</testng>
</target>
<target name="usage">
<echo>
ant run will execute the test
</echo>
</target>
<path id="test.c">
<fileset dir="${ws.jars}" includes="*.jar"/>
</path>
<target name="makexsltreports">
<mkdir dir="${ws.home}/XSLT_Reports/output"/>
<xslt in="${ng.result}/testng-results.xml" style="src/demo/testng-results.xsl"
out="${ws.home}/XSLT_Reports/output/index.html" classpathref="test.c" processor="SaxonLiaison">
<param name="testNgXslt.outputDir" expression="${ws.home}/XSLT_Reports/output/"/>
<param name="testNgXslt.showRuntimeTotals" expression="true"/>
</xslt>
</target>
<!-- ****************** targets not used ****************** -->
</project>
Теперь, после компиляции тестовых компиляций (используйте комманду target ant для компиляции ваших тестов), вы получите файлы классов в папке сборки внутри папки проекта, и теперь вы можете удалить папку src (ваши java-файлы) и использовать ant run для выполнения тестов (используйте целевой запуск муравьев), чтобы запустить ваши тесты. Если вы планируете дать ему свой клиент, тогда вы можете сделать простой bat (windows) или shellscript (linux) для выполнения команды ant run и при нажатии на нее пройдет тест
Надеется, что это помогает you..Kindly получить обратно, если у вас есть какие-либо вопросы
@ Md.Zishan Paya Вышеупомянутое решение работает для вас .. – Vicky
Как @vicky предполагает, смотреть на Maven, так как это позволит вам упаковать ваш проект как с производственной WAR/JAR, а также тесты упакованы в тестовый JAR. В частности, на test-jar JAR type вы можете пометить JARs.
Так добавить это как плагин к pom.xml:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.2</version>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
И тогда другие могут вытянуть его как зависимость с помощью:
<dependency>
<groupId>com.foo</groupId>
<artifactId>bar</artifactId>
<version>1.2.3</version>
<type>test-jar</type>
<scope>test</scope>
Немного больше информации здесь : How do I install a test-jar in maven?
- 1. Как запустить или перенести тестовый пакет html в Selenium 3?
- 2. Спецификация файла JAR vs WAR
- 3. Добавить путь JAR к пути WAR без изменения WAR-файла
- 4. Запустить .jar из пакетного файла
- 5. Jar in War - NoClassDefFound Exception
- 6. Изменение имени файла jar с использованием maven
- 7. Пакет JARs в WAR или положить на путь класса?
- 8. Упаковка файла JAR в файле WAR
- 9. Выполнение Jar-файла с использованием BAT-файла
- 10. Запуск файла .jar с использованием .bat-файла
- 11. MessageHandler в JAR/WAR/EAR
- 12. Как запустить тестовый пример selenium java и пакет с использованием selenium rc через командную строку
- 13. Ввод файла версии в EAR или WAR с использованием Maven
- 14. Неверные файлы, добавленные в WAR-пакет с использованием Gradle
- 15. Spring Resource Inside JAR/WAR
- 16. Ошибка развертывания файла WAR WAR
- 17. tomcat: исключить jar in war
- 18. Maven - Jar in a War
- 19. Неужели Arquillian распакует тестовый пакет слишком рано?
- 20. Создание файла WAR с использованием Java
- 21. Создание WAR с использованием Netbeans
- 22. Как запустить файл .war с tomcat/maven?
- 23. пакет и запустить пример приложения, как JAR с Netbeans
- 24. Java getResourceAsStream JAR внутри WAR
- 25. Выполнение файла jar с использованием .bat-файла
- 26. SpringBoot, запустить демона как CommandLine (JAR) и внутри Tomcat (WAR)?
- 27. Apache Karaf Развертывание .War-файла
- 28. Добавление JAR из локальной упаковки WAR с использованием Maven
- 29. Весенняя обувь Jar to war
- 30. запустить тестовый комплект в MTM
Тестовый код не входит в исполняемый пакет, такой как JAR или WAR. – duffymo
Будет ли это полезно: http://www.toolsqa.com/selenium-webdriver/testng-testcase/? –
Duffymo, поэтому я не могу запустить свой тест без кодов? Есть ли какой-то выход, я не хочу делиться своей полной картой. Люк, я знаю тестовый случай testng, но хочу знать, могу ли я запустить свой тест с использованием файла jar или war. –