软件测试
SDLC模型
测试类型
测试方法
白盒技术
黑盒技术
黑匣子类型
功能类型
非功能性类型
测试用例开发
测试技术
测试管理
缺陷跟踪
测试分类
测试工具

手动测试

手动测试

手动测试是一种软件测试过程,在该过程中,不使用任何自动化工具手动执行测试用例。测试人员根据最终用户的观点手动执行的所有测试用例。它确保应用程序是否正常工作,如需求文档中所述。计划和实施测试用例以完成几乎 100% 的软件应用程序。测试用例报告也是手动生成的。
手动测试是最基本的测试过程之一,因为它可以发现软件的可见和隐藏缺陷。软件给出的预期输出和输出之间的差异被定义为缺陷。开发人员修复缺陷并将其交给测试人员进行重新测试。
在自动测试之前,每个新开发的软件都必须进行手动测试。这种测试需要付出巨大的努力和时间,但它可以确保软件没有错误。手动测试需要了解手动测试技术,但不需要了解任何自动化测试工具。
手动测试是必不可少的,因为 软件测试 基本原理是"100% 自动化是不可能的。"

为什么我们需要手动测试

每当应用程序进入市场,并且在最终用户使用它时它不稳定或存在错误或问题或产生问题。
如果我们不想面对此类问题,我们需要执行一轮测试使应用程序无错误且稳定,并为客户提供优质产品,因为如果应用程序无错误,最终用户将更方便地使用应用程序。
如果测试工程师这样做手动测试,他/她可以从最终用户的角度测试应用程序并更加熟悉产品,这有助于他们编写正确的应用程序测试用例并给出应用程序的快速反馈。

手动测试的类型

手动测试有多种方法。每种技术都根据其测试标准使用。手动测试的类型如下:
白盒测试 黑盒测试 灰盒测试 手动测试

白盒测试

白盒测试由开发人员完成,他们在将代码交给测试工程师之前检查每一行代码。由于代码在测试过程中对开发人员可见,因此也称为白盒测试。

黑盒测试

黑盒测试由测试工程师完成,他们可以根据客户/客户的需求检查应用程序或软件的功能。在这种情况下,执行测试时代码是不可见的;这就是它被称为黑盒测试的原因。

灰盒测试

灰盒测试是白盒测试和黑盒测试的结合。它可以由既了解编码又了解测试的人执行。如果单人执行应用程序的白盒测试和黑盒测试,则称为灰盒测试。

如何进行手动测试

首先,测试人员观察所有与软件相关的文档,选择测试区域。 测试人员分析需求文档以涵盖客户陈述的所有需求。 测试人员根据需求文档开发测试用例。 所有测试用例均使用黑盒测试和白盒测试手动执行。 如果出现错误,测试团队会通知开发团队。 开发团队修复了错误并将软件交给测试团队进行重新测试。

软件构建过程

一旦收集到需求,它将提供给两个不同的团队开发和测试团队。 获得需求后,相关开发人员将开始编写代码。 与此同时,测试工程师了解需求并准备好所需的文件,开发者现在可以完成代码并存储在控制版本工具中。 之后,UI 中的代码发生变化,这些变化由一个单独的团队处理,该团队称为构建团队。 该构建团队将获取代码并在构建工具的帮助下开始编译和压缩代码。一旦我们得到一些输出,输出就会进入 zip 文件,它被称为 Build(应用程序或软件)。每个 Build 都会有一些唯一的编号,如(B001, B002)。 然后这个特定的 Build 将安装在测试服务器中。之后,测试工程师将在测试 URL 的帮助下访问此测试服务器并开始测试应用程序。 如果测试工程师发现任何错误,他/她将报告给相关的开发人员。 然后开发者将在测试服务器中重现该错误并修复该错误并再次将代码存储在控制版本工具中,它会安装新的更新文件并删除旧文件;这个过程一直持续到我们得到稳定的 Build。 一旦我们获得稳定的 Build,就会将其交给客户。 手动测试

注意1

一旦我们从控制版本工具收集文件,我们将使用构建工具将代码从高级语言编译为机器级语言。编译后,如果文件大小会增加,那么我们将对该特定文件进行压缩并转储到测试服务器中。 此过程由构建团队、开发人员(如果构建团队不在,开发人员可以完成)或测试主管完成>(如果构建团队直接处理 zip 并将应用程序安装到测试服务器并通知测试工程师)。 一般来说,我们无法为每个 bug 获得一个新的 Build;否则,大部分时间只会浪费在创建构建上。

Note2

构建团队
构建团队的主要工作是创建应用程序或构建并将高级语言转换为低级语言。
构建
它是软件,用于将代码转换为应用程序格式.并且它包含一些功能和错误修复程序集,这些功能和错误修复将移交给测试工程师用于测试目的,直到它变得稳定。
控制版本工具
它是一种软件或应用程序,用于以下目的:
在这个工具中,我们可以保存不同类型的文件。 它始终是安全的,因为我们使用相同的登录凭据从工具访问文件。 这些工具的主要目标是跟踪对现有文件所做的更改。

构建流程示例

让我们看一个示例来了解如何在实际场景中构建流程:
一旦测试工程师拿到bug,他们会把它发送给开发人员,他们需要一些时间来分析;之后,他/她只修复错误(测试工程师不能给出错误集合)。
开发人员根据他们的时间决定他/她可以修复多少错误。然后测试工程师决定,应该根据自己的需要先修复哪个bug,因为测试工程师无法停止测试。
而测试工程师收到邮件,他们只能知道哪个bug是由错误修复列表修复。
时间会增加,因为在第一次构建时,开发人员应该编写不同功能的代码。最后,他/她只能修复错误,并且天数会减少。
手动测试

Note3

测试周期
测试周期是给测试工程师测试每个Build的持续时间.
两个build的区别
在一个build中发现的bug,可以在以后的任何一个build中修复,这取决于测试工程师的要求.每个新版本都是旧版本的修改版本,这些修改可能是错误修复或添加一些新功能。
我们获得新版本的频率 一开始我们是每周获取一次,但在最新的测试阶段,当应用程序稳定时,我们习惯于每三天、两天或每天一次获取新的Build
我们得到了多少构建
如果我们考虑任何项目持续时间的一年,我们得到了 22-26 个构建。
当我们得到 bug 修复时
一般来说,我们只有在测试周期完成后才了解 bug 修复,或者部分错误在一个构建中修复,并在下一个构建中移交。

手动测试的优点

使用黑盒方法不需要编程知识。 用于测试动态变化的 GUI 设计。 测试人员以真实用户的身份与软件交互,以便他们能够发现可用性和用户界面问题。 它确保软件百分百没有错误。 它具有成本效益。 易于新测试人员学习。

手动测试的缺点

它需要大量的人力资源。 这非常耗时。 测试人员根据他们的技能和经验开发测试用例。没有证据表明它们是否涵盖了所有功能。 不能再次使用测试用例。需要为每个新软件开发单独的测试用例。 它不提供测试的所有方面的测试。 由于两个团队一起工作,有时很难了解彼此的动机,可能会误导流程。

手动测试工具

在手动测试中,不同类型的测试如单元、集成、安全、性能和错误跟踪,我们有各种工具,例如Jira、Bugzilla、Mantis 、Zap、NUnit、Tessy、LoadRunner、Citrus、SonarQube等市场上有售。一些工具是开源的,一些是商业的。
Manual Testing
让我们一一了解:

LoadRunner

是最常用的性能测试工具. LoadRunner 主要用于支持对范围广泛的程序、方法数量和应用程序环境的性能测试。
执行 LoadRunner 工具的主要目的是快速分类最常见的性能问题来源。
Manual Testing
LoadRunner 的特性
LoadRunner 工具包含 n 个应用程序,可减少理解和描述报告的时间。 我们可以使用 LoadRunner 工具获得全面的性能测试报告。 它将降低分布式负载测试的成本,并提供用于部署跟踪的操作工具。

Citrus

Citrus 是一个集成测试工具,是最常用的测试框架。它是用Java 编程 语言编写的。它主要用于请求和响应服务器端和客户端以及验证 XML JSON 文件。
为了完成端到端的用例测试,citrus 支持多种 HTTP、JMS 和 SOAP 协议。
Manual Testing
Citrus 的特征
以下是 Citrus 工具的一些重要功能:
用于发送和接收消息。 Citrus 可作为开源和市场许可使用。 它提供了一种低成本的解决方案。 我们可以使用 citrus 工具对数据库进行身份验证。 它将描述消息的顺序,提供测试计划,并记录测试覆盖率。 它创建消息并验证响应。

ZAP

ZAP 是一个开源 Web 应用程序安全扫描器。它代表 Zed 攻击代理。就像其他一些工具一样,它也是用JAVA 编程语言编写的。它是最有效的Open Web Application Security Projects [OWASP]。
Manual Testing
ZAP 的特点
它支持多种操作系统,例如 Windows、Linux、OS X。 它具有基于插件的架构。 它包含一个允许我们添加新功能或更新功能的在线市场。 ZAP 的 GUI 控制面板易于使用。

NUnit

NUnit 是最常用的单元测试工具之一。它是一个开源工具,主要源自 JUnit。
它完全写在 C# 编程语言,适用于所有.Net 语言。
换句话说,我们可以说 NUnit 工具被完全重新设计,成为许多 .Net 语言品质的优势。 例如:
与反射相关的功能。 其他自定义属性。 Manual Testing
NUnit的特性
它允许将断言作为优势类的静态方法。 它支持数据驱动的测试。 它支持多种平台,例如 .NET core Xamarin mobile、Silverlight 和高效框架。 NUnit 的能力帮助我们同时执行测试。 它使用控制台运行器来加载和执行测试。

JIRA

最常用的错误跟踪工具是JIRA,它是一个开源工具。它用于错误跟踪、项目管理和问题跟踪。
在此工具中,我们可以轻松跟踪测试工程师产生的与软件相关的各种错误或缺陷。
Manual Testing
JIRA 的特点
这是一个节省时间的工具。 Jira 用于跟踪缺陷和问题。 用于建立文档任务。 Jira 是一个非常有用的工具,可用于跟踪我们的文档改进情况。

SonarQube

手动测试的另一个测试工具是 SonarQube,它通过持续的代码质量和代码改进我们的工作流程安全。使用插件灵活。
完全用JAVA编程语言编写。它提供了与 Ant、Maven、Gradle、MSBuild 和持续集成工具的全自动评估和集成。 SonarQube 能够记录指标历史并给出演化图。
Manual Testing
Sonarqube 的功能
以下是 SonarQube 工具的一些重要功能:
它支持多种编程语言,如 C、C++、Python、JAVA、HTML、CSS、VB.NET、PHP、COBOL、PL/SQL 等。 根据 GNU 宽松通用公共许可证,Sonarqube 可免费使用。 SonarQube 隶属于一些重要的外部工具,例如 GitHub、Active Directory、LDAP 等。 由于 SonarLint 插件,SonarQube 与 Visual Studio、Eclipse 和 IntelliJ IDEA 开发环境合并。

JMeter

JMeter 是一个开源工具,用于测试静态和动态资源以及动态 Web 应用程序的性能。
完全设计在JAVA应用上,加载功能测试行为,衡量应用的性能。
方便用户或开发者使用源代码开发其他应用。
Manual Testing
JMeter 的特性
下面是一些JMeter 的基本特征:
它是独立于平台的,它接受像 Windows、Mac 和 Linux 等的 JVM。 它支持用户友好的 GUI,这是交互式且简单的。 在多种类型的服务器中加载性能测试具有难以置信的可扩展性。

Bugzilla

手动测试中使用的另一个错误跟踪工具是Bugzilla。
许多组织最广泛地使用它来跟踪应用程序的各种错误。
Bugzilla 是一种开源工具,可帮助客户和客户跟踪缺陷。 Bugzilla 也被认为是一种测试管理工具,因为在这方面,我们可以轻松链接其他测试用例管理工具,例如 ALM、质量中心等。
手动测试
Bugzilla 的特性
不gzilla 有一些附加功能可以帮助我们轻松报告错误:
它支持各种操作系统,例如 Windows、Linux 和 Mac。 在 Bugzilla 的帮助下,我们可以以多种格式列出错误。 用户偏好可以衡量电子邮件通知。 Bugzilla 具有高级搜索功能。

Mantis

Mantis 是一个基于网络的错误跟踪系统。 ManitsBT 代表Mantis Bug Tracker。它用于跟踪软件缺陷并以 PHP 编程语言执行。它也是一个开源工具。
Manual Testing
Mantis 的特点
特定工具的一些标准功能如下:
借助此工具,我们可以进行全文搜索。 审核对问题所做更改的跟踪。 它提供了修订控制系统集成。 文本字段和注释的修订控制

Tessy

另一个集成测试工具是 Tessy,用于对嵌入式软件进行集成和单元测试。它还可以帮助我们发现软件或应用程序的代码覆盖率。
它可以轻松管理整个测试组织,包括业务需求、测试管理、覆盖数量和可追溯性。
Tessy 包含三个主要功能,分别如下:
测试界面编辑器(TIE) 测试数据编辑器(TDE) 工作区。 Manual Testing
TESSY 的特点
TESSY 的标准特性如下:
它为测试执行结果生成测试报告。 它支持各种编程语言,例如 C 和 C++。 Tessy 用于评估函数的接口并描述该函数使用的变量。

概述

在这篇文章中,我们已经看到了关于手动测试的详细信息,包括手动测试的定义、手动测试的需求、手动测试的类型、手动测试工具、手动测试的过程以及它的一些重要优点和缺点。
最后,可以说,这是一个测试工程师需要非常坚持、创新和响应迅速的过程。
在手动测试中,测试工程师需要像最终用户解释一样思考和执行。
为了实施手动测试,测试工程师需要生产技能和想象力。并且他们需要考虑多种情​​况或场景来测试特定的应用程序。
尽管我们目前可以借助自动化测试来测试几乎所有应用程序,但仍然需要手动测试,因为它是基础软件测试。
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4