使用 Appium 测试 NativeScript 应用程序

Posted

技术标签:

【中文标题】使用 Appium 测试 NativeScript 应用程序【英文标题】:Testing NativeScript app with Appium 【发布时间】:2015-10-09 01:22:55 【问题描述】:

我正在学习 NativeScript。我正在尝试用 Jasmine 编写一些自动化测试。据我了解,我可以使用 Appium 和 Jasmine 在模拟器中运行自动化测试。此时,我已将 appium-gulp-plugins 添加到我的 package.son 文件中。我还有一个带有单个测试的基本 javascript 文件。该文件如下所示:

describe('MyApp', function() 
  describe('Login', function() 
    it('should successfuly login', function() 
      // set username field value
      // set password field value
      // click "login" button.
      // get response.
      expect(true).toBe(true);
    );           
  );        
);

我有两个挑战:

    如何与测试中的 NativeScript 视图交互?

    我如何实际运行测试?就像现在一样,它只是 Jasmine,所以我可以执行以下操作:

    gulp.src('./path/to/tests.js').pipe(jasmine());
    

但是,在混合使用 Appium 的情况下,我不确定如何将其集成为运行测试的一部分。

【问题讨论】:

看来你不能:github.com/NativeScript/NativeScript/issues/553 【参考方案1】:

第 1 部分:视图是使用 xml 创建的,该 xml 必须具有 text,name,css 等属性。这些可以使用 By.name,By.cssSelector etc. 等方法访问,具体取决于开发期间提供的属性。

第 2 部分:我相信,因为 Appium 最初是基于 selenium 构建的,并且支持它的大部分功能。您可以继续尝试类似于this 的操作,并且可以为访问对象的套件提供操作,如第 1 部分中所述。运行创建的测试需要类似的努力来运行您的主测试脚本。

【讨论】:

【参考方案2】:

在 github 上查看这个已关闭的问题:https://github.com/NativeScript/NativeScript/issues/553

您无权访问应用程序的内部 :((当您使用 appium 进行测试时,但为什么您不查看 KIF,您通过使用可访问性标签或可访问性标识符来访问元素,它是更简单。希望有所帮助:)

【讨论】:

如果您能引用共享链接中的具体信息,我们将不胜感激

以上是关于使用 Appium 测试 NativeScript 应用程序的主要内容,如果未能解决你的问题,请参考以下文章

使用 Testbed 的 Nativescript 测试不起作用

NativeScript 测试无法运行

有关于appium自动化测试的问题

appium——appium环境搭建及使用appium进行APP测试

使用appium框架进行ios自动化测试有啥优势和劣势

appium简介