最关键的地方
对于写操作,对于线上流量势必是在线上特殊集群上回放,你们是怎么做到隔离流量并能保证不影响接口返回值的校验
参考阿里的 doom,是用的特殊 mock,但不知道具体是怎么 mock,这个确实非常麻烦
完全 mock,不去写数据库,diff 测试貌似没什么意义
不 mock,又回影响线上数据
不能一一回复,谢谢所有人的建议,这两天再综合一下给答复。谢谢!
我咋没注意到,-.-
确实,都是底层干活的
很在理,非常谢谢
哈哈 我结婚有两三年了
测开岗
用了大半年的 ngrinder,社区几乎死了一样,二次开发也多半集中在数据的展示,进一步较难。
现在在重新回到 jmeter,谢谢楼主分享的方案,有启发
写的很棒!有几条在压测时有体会,但大部分没有想过,学习了
说的有些飘渺,sonar 和覆盖率这些,其实忽悠能力很重要,能把简单的东西说复杂,也是能力
参考楼主的方案我实践了下,用比较适合回归,比如稳定、简单一点的接口。
我是拿来在线上跑的,没有加入 sql 查询。
楼主开源的精神很棒。
m.invoke(c.newInstance(), (Object[])null);
不能使用 dataProvider 的话,意义不大呀,和 testNG 添加 listener 来实现重跑的方法类似,解决不了这个问题。
这样最后统计的用例数会因为重跑不准确
更新:找到原因,给 jsonPath 设置变量方式有误
错误写法:
jsonPath.param('ID',ID);
String topic= jsonPath.getString("topics.find {it.id ==ID}");
改成这样 OK 了:
jsonPath.param('ID',ID).getString("topics.find {it.id ==ID}");
@843633513 @xushizhao 请问各位是怎么操作的呢
rest-assured 的 jsonpath 解析是否有 bug
String topic= jsonPath.getString("topics.find{topics -> topic.id==" + "20171217THB290187463" + "}");
这种字符串拼接的过滤条件会出错,而将 20171217THB290187463 中的字母改成数字不会报错
public class TestJdbcDataSet extends BaseCase{
Map args = new HashMap();
@Test
@TestDataSet(locations={"/tmp/domaininfo.xls"},dsNames={"mysqlDataSource"})
public void test01_mysql(){
args.put("selfdomain", "baidupc2");
List> result=JdbcUtil.queryData(mysqlJdbcTemplate, "domaininfo", args);
System.out.println(result);
assertEquals("合作商接入名称",result.get(0).get("remark"));
}
}
楼主例子给的太随意了,插库,然后从数据库里读出来断言?
测试数据很多的时候,yaml 一条条写起来不会很麻烦吗。。
请问有没有同学遇到这种情况,跑了一段时间后读取文件出错抛异常退出
2017-12-21 21:16:42 INFO [AppiumClient.mark.245] read from Android_20171221211126/67_com.aa365-PluginNormalThemeActivity_pay_panel-revenue_panel-revenue_panel_view-若下单:-tv_addOrder.clicked.png
2017-12-21 21:16:42 ERROR [Crawler.crawl.203] crawl not finish, return with exception
2017-12-21 21:16:42 ERROR [Crawler.crawl.204] Can't read input file!
2017-12-21 21:16:42 ERROR [Crawler.crawl.205] IIOException: Can't read input file!
然后 appcrawler 重启一个 session,但是报错,appium 启动时已经设置 session 覆盖。
Exception in thread "main" org.openqa.selenium.SessionNotCreatedException: A new session could not be created. (Original error: No app set; either start appium with --app or pass in an 'app' value in desired capabilities, or set androidPackage to launch pre-existing app on device) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 1.10 seconds
Build info: version: 'unknown', revision: 'unknown', time: 'unknown'
System info: host: 'BIH-D-6313', ip: '169.254.60.58', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.8.0_141'
Driver info: driver.version: AndroidDriver
@seveniruby 请问思寒,这是因为图片没有下载下来,读取错误么
同样在尝试 testNG+rest-assured 写接口测试,不知楼主进展如何啦
想请教楼主实现的重跑、并发和 test NG 自带的效果比,有什么优点呢?
非常谢谢耐心的回答,xpath 定位不到,换 css 可以,尝试等待了一段时间等元素加载完毕,但是 button 定位的到点击不了,比较奇怪
截图看不到什么异常,打算换 Chrome Headless 试试
再次谢谢
额这个跟 phantomJs 有关系么
@Handsome2734 好的谢谢,我用 Chrome headless 试试