显示带有标签的帖子 自动化 . 显示所有帖子
显示带有标签的帖子 自动化 . 显示所有帖子

2016年10月2日星期日

如何使用Android Studio配置TestNG

在之前的教程中,我们了解了Junit Testing框架 现在,我们将了解一种称为TestNG的功能更强大的测试框架。 测试NG 框架具有一些不同的功能,这使其成为功能更强大的测试框架。
什么是TestNG Framework?
测试NG 是一个测试框架,它是从Junit和Nunit的灵感中开发出来的,具有其他功能,使使用更有效,更简单。它是NG代表下一代的功能强大的自动化测试框架。它使开发人员可以编写更灵活,功能更强大的测试用例。

测试NG 的特点–
1.它允许您在编写测试用例时使用Java编程语言的新功能。
2.类似于Junit,它提供注释以标识您的测试方法和执行流程。
3.分离编译时间测试代码和运行时配置。
4.提供强大的测试用例执行支持。
5.允许您执行多线程测试。
6,最初它是为单元测试而设计的,但是现在可以进行负载测试,并行测试等。

在这方面还有更多 当我们开始编码时,我们将探索越来越多。但是在编写测​​试用例之前,了解有关测试框架的基础非常重要,因为选择正确的框架就像为自动化框架建立支柱。

如何设置TestNG–

1.创建并使用Android项目或打开现有项目
2.转到应用-> 建立 .gradle
3.将以下代码行复制到“依赖项”部分。
      testCompile'org.testng:testng:6.9.10'




4.单击同步
5.获得成功构建消息后,就可以开始了。

Android项目结构的基础

用android studio进行编码看起来非常有前途,因为它是基于IntelliJ IDEA的IDE,用于android应用程序开发。即使我们不打算构建android应用程序,对我们来说,了解项目结构也非常重要,这样我们才能编写有效且可理解的自动化测试框架。
的 re are five important components of Android项目结构 like 主要,gradle,.idea, app and External Libraries. Let us Discuss this in detail.

1.主要项目 –这将是整个项目的上下文。无论您在IntelliJ IDEA中做什么,都可以在项目的上下文中进行。项目是代表完整软件解决方案的组织单位。 Android Studio中的项目就像一个工作区。在android Studio中,一个项目可以包含多个模块。这意味着从理论上讲,可以在同一项目中构建多个应用程序。

2. .idea –.idea用于在Android Studio中存储项目特定的元数据。

3。项目模块 –这是您的应用程序代码所在的实际项目文件夹。应用程序文件夹具有以下子目录。
   a) 建立 :这具有制作过程的所有完整输出,即classes.dex,已编译的类和资源等。
  b) :lib文件夹用于存储项目特定的jar文件。
  c) src :src文件夹可以同时包含应用程序代码和android单元测试脚本。您会找到两个名为“androidTest” and “main” correspond to src folder. 的 主要 folder contains two subfolders java and res. 的 java folder contains all the java codes and res contains drawables, layouts, etc.

4.摇篮 –Gradle用于构建procress。我们将在嵌套帖子中看到有关此问题的更多详细信息。

5.外部图书馆 -在此处显示参考库和目标平台SDK上的信息。

Android项目结构
Android项目结构

如何使用Android Studio调试代码?

调试代码以查找测试用例执行ID的流程对于移动自动化测试非常重要,因为如果存在测试用例执行错误,那么我们可以轻松找到并快速修复它。

Android Studio 提供快捷键来调试代码并检查根本原因。请尝试按照以下步骤调试您的测试用例。打开任何用Android Studio编写的测试用例。

1. 设置调试指针 -调试指针是指从要启动调试模式的位置精确定位一行代码,然后一步一步地运行代码。单击代码的左侧,然后您将看到一个红色的点,指示调试指针。
 

2. 在调试模式下运行测试用例-  右键单击测试类名称  ->调试为“测试类名称”。


3.调试控制台-  在调试模式下运行测试代码后,代码将一直运行到调试指针,然后在Android Studio的底部打开一个新窗口,称为调试控制台。现在,它可以控制我们逐行运行代码。

4.按下以下屏幕快照中突出显示的按钮,逐行记录测试代码。每次按下按钮,所选的代码行将被执行。


5.如果出现了所要查找的错误,现在您要运行整个代码集,请按以下窗口中突出显示的按钮。


6.如果要签出变量值,请打开“变量控制台”并查找。

这是编写自动化代码时要学习的非常简单和重要的事情。与为移动自动化工作并花更多时间调试测试代码的人员分享。测试愉快:)

2016年9月10日,星期六

如何使用Android Studio配置Junit

我们已经了解了如何在Android Studio中安装和创建项目。在开始自动化测试之前,我们需要使用Android Studio配置Junit Testing框架。 朱尼特 测试框架可帮助我们定义执行流程。让我们进一步了解Junit。

什么是Junit?

朱尼特 与Java编程语言一起被广泛使用的测试框架。您可以将此自动化框架用于单元测试和UI测试,它可以帮助我们定义带有不同注释的代码的执行流程。 朱尼特 建立在“先测试然后编码”的思想之上,这有助于我们提高测试用例的生产率和代码的稳定性。

朱尼特 测试的重要功能- 

1.这是一个开放源代码测试框架,允许用户有效地编写和运行测试用例。
2.提供各种类型的注释以标识测试方法。
3.提供不同类型的断言 验证测试用例执行的结果。
4.它还为测试运行人员提供了有效运行测试的方法。
5.非常简单,因此可以节省时间。
6.它提供了以测试服形式组织测试用例的方法。
7.它以简单,优雅的方式给出测试用例结果。
8.您可以将Jnuit与Eclipse,Android Studio,Maven集成& Ant

朱尼特 与Android Studio

1.创建一个新的Android Studio项目或打开您现有的项目。
2.转到应用-> Build.gradle。



3.在文件中,添加代码行,如下面的屏幕快照所示。


4.点击 同步 .


5.收到Buid成功消息后,即可使用Junit设置。

2016年3月8日星期二

如何在Android Studio中记录测试用例


记录中 测试用例结果与编写测试用例一样重要。有许多 记录JUnit提供的结果的方法,但我将提供一个 我采用了简单有效的解决方案来记录测试案例的结果 在Android Studio上。此方法与自动化选择无关 tool. 

它 在测试时从设备上截取屏幕截图也是一种好习惯 大小写失败,但是该代码取决于工具,因此我也会在其中分享 future posts.

的 您记录测试用例结果的方式将简化对错误的跟踪,并且 生成适当的报告作为测试服运行的输出。因此,我建议 您开始从您的日志记录您的测试用例结果 first test case.

让我们看一个简单的例子。

1.创建一个Java类名称 测试用例 在Android Studio中。
2.在类中声明一个Tag为String LoginTestCase.
3.然后根据需要编写成功或失败的日志,如以下测试用例所示。我已经添加了Appium测试用例作为示例,但是您可以在任何测试用例中使用它。


public void TestCase
{ 鸦片 Driver driver;
String  标签 _name="ScrollTestCase";
@Before
    public void testCaseSetup()throws  Exception
    {

        DesiredCapabilities cap=new DesiredCapabilities();
        cap.setCapability(MobileCapabilityType.PLATFORM_NAME, "Android");
        cap.setCapability(MobileCapabilityType.DEVICE_NAME, "Android device");
        cap.setCapability(MobileCapabilityType.NEW_COMMAND_TIMEOUT, "4000");
        cap.setCapability(MobileCapabilityType.APP, "c://apks//seekbarsample.apk");
        cap.setCapability("noReset", true);
        driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), cap);

    }

@Test
    public void testVerticalScroll()
    {
        //Scroll till the 25th row
        driver.scrollTo("List item:25");
        //Click on the 25th row text
        driver.findElement(By.name("List item:25")).click();
        try {
            Log.e( 标签 _name,"Test case passes");
            Assert.assertEquals("Clicked on row no: 25", driver.findElement(By.id("row_select")).getText());
        }catch (AssertionError e)
        {
            Log.e( 标签 _name,"Test case failed")
        }
    }
@After
    public void testCaseTearDown()
    {
        driver.quit();
    }
}

4.完成在每个测试用例中添加添加日志后,将运行十个测试套件。
5.然后在 它将打开监视器,如下面的屏幕截图所示
在Andorid Studio中记录测试用例
Log 鸦片 测试执行报告

6.然后单击“编辑过滤器配置”,如下所示。

Android Studio中的Log  鸦片 测试用例
在Android Studio中检查日志

7.输入 文件名和our 标签 命中名字 好。

Android Studio中的Log  鸦片 测试用例
在Android Studio中过滤日志

8.然后,您可以阅读测试用例日志。

希望本教程对您有所帮助。分享您的反馈意见并 以下评论部分中的问题。请按照社交媒体上的“质量检查自动化”操作, 获取最新的帖子更新。测试愉快:-)






2016年2月4日星期四

如何找到Android App UI元素?

在开始使用任何选择的自动化工具编写测试用例之前,您需要知道如何在android应用程序中找到UI元素。重要的是要了解为什么需要学习这一点。自动化不过是通过测试用例在不同的UI元素上执行操作,因此在执行这些操作之前,了解要在哪个UI元素上执行操作非常重要。因此,找到唯一标识符以在应用程序内定位UI元素成为第一要务。

目前,我正在使用UI Automator Viewer来定位android应用程序元素,这非常好并且可以满足我们的要求。我用铬检查器 在混合应用中查找网络视图的元素。 

UI Automator是android SDK提供的工具,该工具提供了以分层方式查看和分析UI组件属性的界面,我们可以使用这些属性创建自己的xpath。 (这里的属性是ID,类名,内容描述,文本等)

使用UI Automator Viewer检查UI元素的步骤- 

1.使用USB将设备连接到PC,然后按照以下说明打开USB调试 这里。
2.转到命令行并给出路径,直到android-sdk / platform-tools /
2.运行命令 uiautomatorviewer
3.等待直到UI Automator Viewer  窗口启动。
4.当要测试的应用在Android设备中打开时,单击左下角的绿色图标,如下所示。

5.将鼠标悬停在要定位的on UI元素上,然后单击以对其进行修复。
6.然后在右侧,您将找到与可以在测试用例中使用的元素相关联的UI属性。


使用Chrome-检查Web View UI元素的步骤
1.前往Chrome浏览器
2.键入以下网址-chrome:// inspect / devices#devices
3.单击网页上列出的任何URL。
4.然后单击任何UI元素,您将获得关联的html源代码,可用于编写自己的xpath。




如何在Real Android设备上运行自动化测试用例?

如果使用真实设备运行测试用例,则比使用仿真器更准确。稍后我将发布如何使用仿真器运行测试用例,但现在我们将学习如何在android设备上运行测试用例。本教程是通用的,与您要编写自动化的工具无关。  

这个过程很简单,您需要使用USB电缆将设备连接到PC 然后需要启用USB调试选项。

1.检查是否为设备启用了开发人员选项。为此,请打开设置->如果找到,请检查“开发人员选项”文本。 转到步骤3。


2.启用开发人员选项-转到设置->点击关于手机->连续点击内部版本号七次->您将看到祝酒词“您是开发人员”。现在,您可以在“设置”中找到“开发人员”选项。

3.最后一步是为该首先连接到PC的设备启用USB调试,然后他们单击“开发人员”选项并检查USB调试。它将弹出弹出窗口,要求您单击“确定”。


现在,您的设备已准备好执行测试用例。

您还可以交叉检查自己是否正确完成了-

1.打开命令提示符
2.运行命令 adb设备
3.然后,您可以查看已连接设备的列表。


现在,您和您的设备已准备好运行测试用例。如有任何疑问,请发表评论。  

2016年1月19日,星期二

如何在何处以及在Android Studio中添加测试用例?

在Android Studio中编写与项目结构和层次结构相关的测试文件夹有一些特定规则。在使用Espresso,Robotium和UIautomator的情况下,我们需要编写检测测试用例,并将其写入项目的androidTest文件夹中。让我们看看如何创建该文件夹。

1.在android studio中,重要的是在src / androdTest / java文件夹中编写已测试的功能测试用例,并在src / Test / java中编写单元测试。

2.现在我们需要创建 androidTest文件夹。右键单击 src -> New ->Folder ->Java folder


3.单击更改文件夹位置并添加位置 src / androidTest / Java

4. 右键单击Java-> New ->包和输入包名称


5.创建包后,右键单击 包裹名字 -> New -> Java Class 给出类名TestClass  and click on 好。


创建TestClass之后,您就可以开始编写测试用例了。

如何建立Android专案?

这是一篇关于如何创建Android项目的非常简单的文章,您需要在编写测试用例之前先做一下。

打开android studio并创建一个新项目-
  1. 点击开始新的Android项目截图(8)
  2. 输入应用程序名称和程序包名称,然后单击下一步截图(9)
  3. 点击下一步                                              截图(10).png
  4. 选择空白活动,然后单击下一步截图(11).png
  5. 您可以在此处编辑活动名称,然后单击完成。 截图(12).png 
  6. 您现在已经成功创建了项目。

自动化入门

这篇文章的所有内容都是关于将您的手动测试工作转移到针对本机和混合android应用程序的自动化测试中。一旦决定采用自动化程序以节省发布周期和发布高质量App的时间,下一步就是确定哪种工具适合您的应用程序,组织和团队,以便从自动化测试服中受益。

我将与本地和混合android应用程序的一些最顶级的自动化测试工具共享,并介绍它们的优缺点,以便您可以做出更好的选择,并朝着自动化迈出第一步。

1.鸦片

鸦片 是开放源代码工具,可用于针对Android和iOS的本机和混合移动应用程序测试。 鸦片 在幕后使用供应商提供的自动化框架,例如Apple的iOS应用程序UI自动化器,Android应用程序4.2及更高版本的UIAutomator和2.3至4.1 Selendroid。
鸦片 的体系结构是基于客户端服务器的体系结构。 鸦片 服务器公开了REST API,该API接收来自客户端的连接并在移动设备上执行这些命令。自动化以会话和所需功能的形式执行,以及将有关所需会话的信息发送给服务器的密钥。

优点
1.鸦片 客户端库支持多种语言,因此您可以使用不同的语言编写测试用例,例如 Java,Ruby,Python,PHP,JavaScript和C#。
2. 鸦片 支持跨平台脚本开发。
3. 鸦片 在您要求和共享的地方提供了广泛的社区支持。
4.它支持在物理设备以及仿真器上运行的测试。
5.为Android和iOS的本机和混合移动应用程序提供支持。
6.录制和播放可用于Mac OS 

缺点  
1.记录和播放在Windows操作系统上不可用。 
文档不是用户友好的。
3.不支持图像比较。
4.设置需要一些时间,特别是在Linux系统的情况下。
5.限制对手势的支持。
6.对android版本的有限支持< 4.1
7.不支持T麦萨格 es。

 

2.机器人

Robotium还是适用于android的开源自动化测试框架。使用robotium可以非常有效地编写黑盒测试用例,并且如果代码复杂,还可以进行灰盒测试。它的API非常简单,您可以快速开始编写UI自动化测试用例。


优点
1.简单的API提供编写测试用例的功能,以便您可以将更多精力放在测试场景上。
2.支持底盒和灰盒测试。
3.易于与Gradle,ANT和Maven集成。
4.可以与Jacoco一起使用以测量代码覆盖率。

缺点
1.要使用Robotium编写测试用例,必须具备Java知识 
3.浓咖啡

浓咖啡 是Google开发的用于本机android应用程序的开源框架.Espresso建立在Android Instrumentation Framework之上.Espresso也支持白盒测试。

优点
1.支持所有android版本。
2.设置更加简单快捷。
3.支持Jacoco测量代码覆盖率。
4.可以进行广泛的测试,因为它涵盖了许多UI动作和手势。

缺点
1.测试用例写在android应用程序项目代码中,因此构建要运行测试用例的项目要花费很多时间。

4. UIAutomator-

UIAutomator是Google原生的Android应用程序和游戏的测试框架。它带有用于创建UI测试用例和执行引擎的API。它支持API级别为16以上的设备。这对本机应用程序非常有用,但不支持Web视图和混合应用程序。

优点
1.提供简单易学的信息。
2. Support is strongly 主要tained by Google.
3.可以进行云基础测试管理。

缺点
1.支持大于4.1的android版本。
2.不支持Web视图。