http://readyapi.smartbear.com/features/scripts/start 查找API
今天跑 ready!API 的时候 , 遇到下面这个问题
1. org.apache.xmlbeans.XmlException: error: Unexpected character encountered (lex state 3):' ' error at lineXXX
2. org.apache.xmlbeans.XmlException:error: Unexpected element:CDATA error at line:XX
原因都是response里面有个中文输入符号导致的 ,把它删了就可以了
还可以这样:
def response3X = context.expand('${Get3XList#responseAsXml}')
response 返回为Xml
3. 昨天因为大小写的问题,查了好久, 因为soapui的没有调试的功能, 以后要是坚信自己代码没问题,就要查语法了。 大小写啊,空格啊,输入符这些
4.之前写的write to excel 的功能后来竟然不能用了,一直报错,应该是升级了readyAPI的版本的问题的。
java.lang.NoClassDefFoundError:org/openxmlformats/schemas/spreadsheetml/x2006/main/CTExtensionList
解决方法: 用"ooxml-schemas-1.1.jar" 替换掉 "poi-ooxml-schemas-3.12.jar" in ReadyAPI lib folder
5. CompositeProject 多人开发模式
在Porject ProPerties 下有个参数叫Composite Project, 把值改为true,然后另存为,就是一个多人开发模式,另存为后是一个多个folder组成的project, 按suite来管理。不同的人可以开发不同的suite。
6. Script Language
在Porject ProPerties 下有个参数叫 Script Language, 把值改为${projectDir}, 就可以调用同目录下的自定义函数。前提是在项目的同级目录下先建一个folder,比如GroovyScript, 然后在项目内的script就可以这样引用。
先导入包:package GroovyScript
然后 定义对象,def readTxt = new ReadTxt() ,对象名字和保存在folder里面的名字一样:ReadTxt.groovy
然后在使用里面的方法,比如readTxt(jsonPatchTxt)
7.Tags
多人开发模式, 在jenkins build的时候, 可以选择run 那个suite : -sTestSuiteName
也可以选择run 多个suite :
1. 这时候要先在readapi 里打上tags。
点击项目--> 在右边的view,选中suite 然后点击tools 上的 tags Icon 输入tag
2. 在jenkins上配置一个可选参数。 我命名为 testSuiteTags,里面的item就是 tag 的名字
然后在 windows batch command 用 -T"TestSuite %testSuiteTags%" 来代替 -sTestSuiteName
https://support.smartbear.com/readyapi/docs/soapui/ui/suite.html
https://support.smartbear.com/readyapi/docs/soapui/running/automating/cli.html?q=-TTestSuite