我是selenium的新手,我想在windows服务器上安排我的测试。因此,我打算创建一个.bat文件并使用windows调度程序。这是我的蝙蝠档案。请帮我一下
projectLocation=E:\Automation\Webdrive项目\HTML5 5 cd %投影定位% 设置classpath=%projectLocation%\bin;%projectLocation%\lib* java org.testng.TestNG %projectLocation%\testng.xml 暂停
项目
当我运行代码时会发现一些错误。
C:\Users\miskinr\Desktop set projectLocation=E:\Automation\Webdrive project\HTML5
C:\Users\miskinr\Desktop cd E:\Automation\Webdrive project\HTML5
C:\Users\miskinr\Desktop set classpath=E:\Automation\Webdrive project\HTML5\bin;
E:\Automation\Webdrive project\HTML5\lib\*
C:\Users\miskinr\Desktop java org.testng.TestNG E:\Automation\Webdrive project\HTML5\testng.xml
java.io.FileNotFoundException: E:\Automation\Webdrive (The system cannot find the file specified)
at java.io.FileInputStream.open0(Native Method)
at java.io.FileInputStream.open(Unknown Source)
at java.io.FileInputStream.<init (Unknown Source)
at java.io.FileInputStream.<init (Unknown Source)
at org.testng.xml.Parser.parse(Parser.java:167)
at org.testng.TestNG.initializeSuitesAndJarFile(TestNG.java:300)
at org.testng.TestNG.run(TestNG.java:1021)
at org.testng.TestNG.privateMain(TestNG.java:1355)
at org.testng.TestNG.main(TestNG.java:1324)
java.io.FileNotFoundException:
C:\Users\miskinr\Desktop\project\HTML5\testng.xml
(The system cannot find the path specified)
at java.io.FileInputStream.open0(Native Method)
at java.io.FileInputStream.open(Unknown Source)
at java.io.FileInputStream.<init (Unknown Source)
at java.io.FileInputStream.<init (Unknown Source)
at org.testng.xml.Parser.parse(Parser.java:167)
at org.testng.TestNG.initializeSuitesAndJarFile(TestNG.java:300)
at org.testng.TestNG.run(TestNG.java:1021)
at org.testng.TestNG.privateMain(TestNG.java:1355)
at org.testng.TestNG.main(TestNG.java:1324)发布于 2016-02-17 14:16:39
使用
cd /d "%projectLocation%"/d开关与工作目录同时更改驱动器号,引号将空间视为路径名的一部分,而不是作为标记分隔符。而且,出于同样的原因,您应该引用
java org.testng.TestNG "%projectLocation%\testng.xml"但是,由于您已经修复了cd /d行,所以可以忽略%projectLocation%,因为这已经是当前的工作目录了。
不严格适用于当前情况,但是每当您将变量设置为字符串时,引用"variable=value"对是很好的做法。
最后,*通配符不会产生您预期的效果,我不认为。您将需要使用一个for /d循环来展开它,并使用延迟扩展来在该循环中追加%classpath%。
setlocal enabledelayedexpansion
set "projectLocation=E:\Automation\Webdrive project\HTML5"
cd /d "%projectLocation%"
set "cp=%CLASSPATH%"
rem // append *.jar recursively to cp
for /r %%I in (*.jar) do (
if not defined cp (set "cp=%%~fI") else set "cp=%%~fI;!cp!"
)
java -cp "%cp%" org.testng.TestNG "testng.xml"
pause发布于 2016-02-17 19:26:58
在cd %射影定位%之后,驱动器路径仍在C:中。
执行cd E:\以切换驱动程序。由于testng.xml存在于E:驱动器中,并且您试图从C:\ File运行,因此未找到异常将被触发。
试试这个:
projectLocation=E:\Automation\Webdrive project\HTML5
cd %projectLocation%
set classpath=%projectLocation%\bin;%projectLocation%\lib*
cd E:\
java org.testng.TestNG %projectLocation%\testng.xml发布于 2018-01-08 14:46:44
我也面临着类似的问题,只要改变一下below.it就行了
projectLocation=E:\Automation\Webdrive project\HTML5
cd %projectLocation%
set classpath=%projectLocation%\bin;%projectLocation%\lib*
cd..
E:
java org.testng.TestNG %projectLocation%\testng.xmlhttps://stackoverflow.com/questions/35458189
复制相似问题