• 是的

  • Cucumber 项目最佳实践 at 2019年11月27日

    http://cuketest.com/zh-cn/execution/cli.html 参考说明文档,用命令行模式执行跟 Jenkins 集成

  • Cucumber 项目最佳实践 at 2019年04月28日

    feature 文件中是不能设置全局变量,feature 文件中的变量你可以在描述中用引号 印起来,这个只对当前 step 有用。
    如果要设置全局变量的话,可以将变量单独写一个 js 文件中,在实现操作的使用导入这个 js 文件引用。

  • 支持的 node.js 和 cucumber 都是开源的,
    https://github.com/cucumber/cucumber-js
    请问还需要开源哪部分?我们可以考虑

  • 嗯,行为驱动测试的理念是为了减少大家的沟通成本,提高团队的协作能力。

  • 不好意思,我代码复制的格式有问题,
    不是

    var adb = require('adbkit')var client = adb.createClient()
    

    应该是

    var adb = require('adbkit');
    var client = adb.createClient();
    
  • 不是的, BDD 主要是从外部系统行为来检测软件功能的正确性。 单元测试框架主要是从内部检测函数正确性。

  • 这个不算广告,从外文翻译来的。 Why Automation Testing is Necessary http://techtowntraining.com/resources/blog/why-automation-testing-necessary

  • 谢谢指正,已更改,我想说是一款专业的代码编辑工具。

  • 快速入门手机自动化测试 at 2018年04月20日

    直接用 appium 也可以,我这样做的话,主要把测试用例与自动化代码结合起来,对于刚入门的小伙伴,可以快速上手,另外,不用去定义大量的基础代码。也可以直接用到公司项目中,后期维护起来也很方便。

  • 快速入门手机自动化测试 at 2018年04月20日

    不需要 root

  • 关于 node.js 的简单介绍,做了一个视频,可以参考 http://www.iqiyi.com/w_19rw28l6np.html
    如果有讲的不周的地方,望指点

  • 微信 webview 的自动化技术 at 2018年01月04日

    可以的。 参考我上面的代码可以打开微信浏览器。

  • 结贴。 删贴。

  • 学学学, 不仅要学,还要学会,不仅要学会,学会还要再分享。 :)

  • 请问大佬,您说的高是哪方面的高呀? 是学编程语言的成本高吗? 说到编程语言,想请问下学 JavaScript,Python,Java,哪个更快一些 ?

  • 可以参考 StackOverflow,提问题是先搜索一下。

  • 微信 webview 的自动化技术 at 2017年12月25日

    还有一个问题,同样我使用 python 来实现的过程中遇到如下问题 [Chromedriver] Chromedriver exited unexpectedly with code null, signal SIGTERM
    [Chromedriver] Changed state to 'stopped'
    看讨论里面说通过降级 chromedriver 可以实现,我降到 chromedriver 2.20 版本依然还是这个问题, 下面是我的代码,代码应该没毛病吧。

    from appium import webdriver
    import selenium
    
    import time
    desired_caps = {
        'platformName': 'Android',
        'fastReset': False,
        'deviceName': 'U10AFCPH235V8',
        'appPackage': 'com.tencent.mm',
        'appActivity': '.ui.LauncherUI',
        'fullReset': False,
        'unicodeKeyboard': False,
        'resetKeyboard': False,
        'noReset':True,
        'androidProcess' : 'com.tencent.mm:tools' 
        }
    
    driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
    time.sleep(10)
    el1 = driver.find_element_by_xpath("/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.view.ViewGroup/android.widget.FrameLayout[1]/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.RelativeLayout/android.widget.LinearLayout/android.widget.RelativeLayout[4]/android.widget.LinearLayout")
    el1.click()
    el2 = driver.find_element_by_xpath("/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.view.ViewGroup/android.widget.FrameLayout[1]/android.widget.FrameLayout/android.widget.LinearLayout/com.tencent.mm.ui.mogic.WxViewPager/android.widget.FrameLayout/android.widget.RelativeLayout/android.widget.ListView/android.widget.LinearLayout[3]")
    el2.click()
    el3 = driver.find_element_by_xpath("//android.widget.FrameLayout[@content-desc=\"当前所在页面,我的收藏\"]/android.widget.LinearLayout/android.widget.FrameLayout/android.view.ViewGroup/android.widget.FrameLayout[2]/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.ListView/android.widget.LinearLayout[1]/android.widget.LinearLayout/android.widget.LinearLayout/android.widget.LinearLayout[2]")
    el3.click()
    # current = driver.current_context
    # contexts = driver.contexts
    # print("len:",len(contexts))
    time.sleep(5)
    print("slepp for 5 secound....")
    print(driver.contexts)
    driver.switch_to.context('WEBVIEW_com.tencent.mm:tools')
    

    求助 please help me

  • 微信 webview 的自动化技术 at 2017年12月25日

    请教一个问题,使用 node.js 来实现的时候,发现没有 selenium-webdriver 没有提供切换 webview 的相关方法,请问有使用 node.js 实现切换的吗?
    我的环境如下:
    node.js: v8.9.1
    selenum-webdriver: 3.6.0
    chromedriver: 2.34.0
    appium: 1.7.1
    代码如下:

    let chrome = require('selenium-webdriver/chrome');
    
    let { Builder } = require('selenium-webdriver');
    
    let driver = new Builder().
        usingServer('http://localhost:4723/wd/hub').
        withCapabilities({
            platformName: 'Android',
            platformVersion: '6.0',
            deviceName: 'U10AFCPH235V8',   //魅族设备 U10
            appPackage: "com.tencent.mm",
            appActivity: ".ui.LauncherUI",
            fastReset: false,
            fullReset: false,
            noReset: true,
            androidProcess: 'com.tencent.mm:tools',
            browserName: 'com.tencent.mm'
        }).
        build();
    driver.sleep(10000);
    driver.findElement({ xpath: "/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.view.ViewGroup/android.widget.FrameLayout[1]/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.RelativeLayout/android.widget.LinearLayout/android.widget.RelativeLayout[4]/android.widget.LinearLayout" }).click();
    driver.findElement({xpath:"/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.view.ViewGroup/android.widget.FrameLayout[1]/android.widget.FrameLayout/android.widget.LinearLayout/com.tencent.mm.ui.mogic.WxViewPager/android.widget.FrameLayout/android.widget.RelativeLayout/android.widget.ListView/android.widget.LinearLayout[3]"}).click()
    driver.findElement({xpath:"//android.widget.FrameLayout[@content-desc=\"当前所在页面,我的收藏\"]/android.widget.LinearLayout/android.widget.FrameLayout/android.view.ViewGroup/android.widget.FrameLayout[2]/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.ListView/android.widget.LinearLayout[1]/android.widget.LinearLayout/android.widget.LinearLayout/android.widget.LinearLayout[2]"}).click();
    driver.sleep(10000)
    
    // 不能切换,没有找到相关切换webview的方法
    driver.switchTo().activeElement("WEBVIEW_com.tencent.mm:tools")
    

    参考文档 https://seleniumhq.github.io/selenium/docs/api/javascript/module/selenium-webdriver/lib/webdriver_exports_TargetLocator.html