#4 楼 @601068603 写的还是挺认真的, 赞一下, 你可以自己搞成系列后再放上来. 你的文章已经有 80 人看了, 所以你得让看的人觉得好, 有干货才行. 这样才能彼此进步
不得不吐槽下百度和阿里的那些 QA 搞的大数据分析之类的. 他们没一个用过机器学习算法. 都是忽悠, 连数据分析都搞不定. 还谈机器学习.
#1 楼 @chenhengjie123 是的, 个别的系统很可能没有 ll 这个命令
#1 楼 @chenhengjie123 恩, 这个太基础了, 不够出彩. 分享的精神很好, 但是也得考虑别人阅读你文章的收益.
赞. 读了一遍, 我也重温了下 java. 每次遇到语法问题, 我都得去 google 一番.
#5 楼 @chenhengjie123 他估计是发广告的, 已经删除了广告链接
我安装 appium 也经常出错. node 对 windows 的支持不是特别好. 你需要安装微软的 vs 工具才能有对应的编译器.
#23 楼 @pighero001 哈哈,一个搞笑的段子, 我收集到我们 testerhome 的搞笑段子
#21 楼 @pighero001 这句话是对的. 因为我还有一年在其他公司 没提.
#12 楼 @james88233 那也不是 jsp 吧? appium 的底层是基于 uiautomator 和插桩的. uiautomator 模式的确慢, 能用插桩就尽量用插桩.
#10 楼 @james88233 JSP? 他可以用任何语言的. 你好好看看
能模拟 cell network. 这个有点强大. 以前没见过这种功能. 对 ap 的通信一直不太懂.
#3 楼 @mildshark 原来你用的 inspector, 那个不太好用. 还是需要有人专门做跟好的.
用的什么 record 工具?
编译的确很痛苦 所以才有了各种包安装工具
#1 楼 @lihuazhang robotium 的源代码
robotium 和 selendroid 原理都是一样的. 只是封装方式不同. robotium 是 api 方式. selendroid 是 webdriver api 方式. 而 calabash 是 BDD 模式. 风格不同.
/**
* Executes the given JavaScript function
*
* @param function the function as a String
* @return true if JavaScript function was executed
*/
private boolean executeJavaScriptFunction(final String function){
final WebView webView = viewFetcher.getFreshestView(viewFetcher.getCurrentViews(WebView.class, true));
if(webView == null){
return false;
}
final String javaScript = prepareForStartOfJavascriptExecution();
Activity activity = activityUtils.getCurrentActivity(false);
if(activity != null){
activity.runOnUiThread(new Runnable() {
public void run() {
if(webView != null){
webView.loadUrl("javascript:" + javaScript + function);
}
}
});
}
else{
inst.runOnMainSync(new Runnable() {
public void run() {
if(webView != null){
webView.loadUrl("javascript:" + javaScript + function);
}
}
});
}
return true;
}
selendroid 模式比 uiautomator 模式更有用, 推荐大家好好看看. 替代 robotium 的方案有两个.
一个是 calabash, 一个是 selendroid. calabash 是 BDD 方式, 并不是所有人都喜欢.
selendroid 相对更好些. 但是一直被 appium 遮盖了光芒.
#3 楼 @chenhengjie123 为了显示自己水平强. 知道 markdown, 好事. 我想起来今天有个教授说, 他有个学生所有的笔试题都使用递归解决, 还都答对了..
这个东西是见效慢的测试实践, 以你目前的实力不建议采用. 最好是先用其他的见效快的方法来保证质量. 比如接口测试, 覆盖率, 自动化, 专项测试, 业务分析, 监控等. 单测是我一直以来都讨厌的测试手段. 他更适合研发团队自己去推进. 而不是测试的人去推进.
用任何开发语言都可以. 尽可能的数据化. 或者采用关键词驱动的框架.
更高级一点, 可以做到从线上的数据录制反向生成测试用例.
能不能保证质量, 是要靠代码覆盖度的. 测试用例的多少不重要.
用例设计需要考虑好, 既要保证覆盖度, 又要保证业务贴合度.
技术上, 我建议你先集中于一点. 这样可以作出有深度的事情来.
比如你可以先集中于接口测试 + 代码覆盖. 尽可能的往白盒测试方向发展.
技术实力说工作的基础. 能让你更好的理解产品和业务.
至于管理, 沟通这些都很有必要, 但是听到, 看到, 学到即可. 不要耗费太多的精力.
再过几年, 你会逐渐发现自己最适合做什么, 是技术, 管理,还是产品. 那个时候重新审视目前的一些, 你会领悟到新的理解. 太早的关注管理和产品, 反而会误入歧途.
年轻的时候看什么<人人都是产品经理>之类的这种书是没用的, 细节是魔鬼, 细节决定成败.细节是需要自己去踩雷才能深刻理解和体会的.
现在互联网的大佬, 比如张小龙, 雷军, 李彦宏 王小川和大淘宝的新任掌门人等, 都是技术和工程出生的. 以及国外的埃隆马斯克, google 的双侠, 乔布斯等. 他们才是一家公司的顶梁柱.
马云, 老罗, 陈年, 陈天桥这些人固然非常的辉煌, 但是成为他们是需要靠机遇的. 长远看, 具备更扎实技术和产品实力的人才更适应多变的环境, 他们才是未来的决定性力量.
.
我一般是直接在国外的服务器直接下载构建.再打包拖回来
交互式的 debug 有时候也不是特别便利, Trace 更方便排查错误