您现在的位置是:首页 > 文章详情

《移动App测试的22条军规》——第23章,第19节对微信App进行自动化测试和探索性测试

日期:2017-05-01点击:225

本节书摘来自异步社区《移动App测试的22条军规》一书中的第23章,第19节对微信App进行自动化测试和探索性测试,作者 黄勇,更多章节内容可以访问云栖社区“异步社区”公众号查看

23.19 对微信App进行自动化测试和探索性测试
我们在对微信App进行测试时,必然会进行自动化和探索性测试。

(1)在编写微信App的自动化测试时,我们还是选用Appium来帮助我们录制对应的脚本;而基于测试金字塔的测试架构设计,我们对于Appium的自动化测试,选择编写“用户登录微信后,在通讯录中添加招商银行公众号”这个用户旅程(如图23.45~图23.55所示)。

打开微信App的主界面(如图23.45所示)。
打开“Contacts”(通讯录)页面(如图23.46所示)。


1220c84d521b1c6c7a7a1f3dedb12e65c7153e85

点击右上角的“+”号按钮(如图23.47所示)。
选择“Add Contacts”( 添加朋友)(如图23.48所示)。


8ad43b81b37a9ea945c46c8fc339e590b6b7afb9

点击搜索框(如图23.49所示)。
在搜索框中输入“cmb”(如图23.50所示)。


fb79e89beb62b41f56e7c7a48446a4909078c6a6

点击“Search: cmb”(如图23.51所示)。
选择搜索结果中的第一个公众号“招商银行”(如图23.52所示)。


b27c1f47a6fb88c397056988adc9ad4eb461c699

在招商银行公众号的“Profile”(详细资料)页面点击“Follow”( 关注)(如图23.53所示)。
在弹出的“Note”提示框中选择“Cancel”(取消)(如图23.54所示)。


174436948bf649711215917539ec43c20509e36a


91c1e2a58b7ef97403e346e6fcf78076ce944ddc

在我们编写针对这个用户旅程的自动化测试时,可以使用Appium的inspector来帮助我们录制对应的脚本(如图23.56所示)。


a880f4b9052e92596c03354ae502dfdfedbc03d5

我们可以使用Appium的inspector来帮助我们录制自动化测试的脚本

Appium inspector生成的脚本如下。 require 'rubygems' require 'Appium_lib' capabilities = { 'Appium-version': '1.0', 'platformName': 'Android', 'platformVersion': '4.4', 'App': '/Users/huangyong/Downloads/weixin600android501.apk', } server_url = "http://0.0.0.0:4723/wd/hub" Appium::Driver.new(caps: capabilities).start_driver Appium.promote_Appium_methods Object find_element(:xpath, "//android.view.View[1]/android.widget.FrameLayout[2]/android.widget.FrameLayout[1]/android. widget.LinearLayout[1]/android.widget.RelativeLayout[1]/android.widget. LinearLayout[1]/android.widget.RelativeLayout[2]/android.widget.LinearLayout[1]/android.widget.TextView[1]").click find_element(:name, "More function buttons").click find_element(:xpath, "//android.widget.ListView[1]/android.widget.LinearLayout[2]/ android.widget.LinearLayout[1]/android.widget.TextView[1]").click find_element(:xpath, "//android.view.View[1]/android.widget.FrameLayout[2]/ android.widget.FrameLayout[1]/android. widget.LinearLayout[1]/android.widget. ListView[1]/android.widget.LinearLayout[1]/android.widget.LinearLayout[1]/android.widget.LinearLayout[1]/android.widget.LinearLayout[1]/ android.widget.RelativeLayout[1]/ android.widget.TextView[1]").click find_element(:xpath, "//android.view.View[1]/android.widget.FrameLayout[1]/ android.view.View[1]/android.widget.LinearLayout[1]/android.widget.LinearLayout[1]/android.widget.RelativeLayout[1]/android.widget.LinearLayout[2]/android.widget.EditText[1]").send_keys "cmb" find_element(:xpath, "//android.view.View[1]/android.widget.FrameLayout[2]/ android.widget.FrameLayout[1]/android.widget.FrameLayout[1]/android.widget.LinearLayout[1]/android.widget.ListView[1]/ android.widget.RelativeLayout[1]/android.widget. LinearLayout[1]/android.widget.TextView[1]").click find_element(:xpath, "//android.view.View[1]/android.widget.FrameLayout[2]/android. widget.FrameLayout[1]/android. widget.LinearLayout[1]/android.widget.ListView[1]/ android.widget.LinearLayout[1]/android.widget.LinearLayout[1]/android.widget.RelativeLayout[2]/android.widget.LinearLayout[1]/android.widget.TextView[1]").click find_element(:xpath, "//android.view.View[1]/android.widget.FrameLayout[2]/ android.widget.FrameLayout[1]/android. widget.LinearLayout[1]/android.widget. ListView[1]/android.widget.LinearLayout[4]/android.widget.TextView[1]").click find_element(:xpath, "//android.widget.FrameLayout[1]/android.widget.FrameLayout[1]/ android.widget.LinearLayout[1]/android.widget.LinearLayout[1]/android.widget.LinearLayout[2]/android.widget.LinearLayout[1]/android.widget.Button[1]").click find_element(:xpath, "//android.view.View[1]/android.widget.FrameLayout[1]/ android.view.View[1]/android.widget.LinearLayout[1]/android.widget.LinearLayout[1]/android.widget.ImageView[1]").click driver_quit

这样我们把脚本保存下来,就能回放执行自动化测试了。当然,我们不仅需要对测试添加断言Assertion,也需要对录制的脚本进行重构,以达到更好的重用性、维护性和可扩展性。

(2)针对微信App的探索性测试,我们选择以“在朋友圈发送消息”这个用户旅程为例。

通过探索性测试,我们发现在朋友圈发送消息,不仅可以发送朋友圈中明确列出的“Images”(照片)和“Sight”(小视频)消息(如图23.57所示)。

也可以通过长按右上角的照相机图标发表文本(Text)(如图23.58所示)。


6f14bde1331b55d8dff6dd688f532327919e35df
原文链接:https://yq.aliyun.com/articles/95194
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章