软件测试很重要。软件测试可以找到程序里的问题。程序有问题会影响使用。程序有问题会造成损失。程序的问题需要早点发现。软件测试就是找问题的方法。
很多人研究软件测试。他们写了很多文章。这些文章讲了测试的方法。这些文章讲了测试的工具。这些文章讲了怎么让测试更好。我们需要读这些文章。读这些文章可以学到东西。
有一篇文章讲自动化测试。自动化测试用机器代替人。机器可以执行测试案例。机器执行得很快。机器不会累。机器可以一直工作。自动化测试节省时间。自动化测试节省人力。文章里说了一个工具。这个工具可以写测试脚本。测试脚本是一系列指令。机器按照指令操作。文章比较了两种脚本语言。一种语言容易学。一种语言功能强。工程师需要做选择。文章给出了建议。
另一篇文章讲安全测试。现在的软件很复杂。软件连接网络。软件里有用户数据。软件需要保护数据。坏人想偷数据。坏人想破坏软件。安全测试专门找安全漏洞。漏洞就像门上的破洞。坏人从破洞钻进来。安全测试找到破洞。工程师修补破洞。文章介绍了几种常见漏洞。有的漏洞让坏人输入恶意代码。有的漏洞让坏人绕过密码。文章还介绍了一些扫描工具。这些工具像探测器。探测器检查软件每个部分。探测器发现可疑的地方。工程师再仔细检查。
还有文章讲测试用例生成。测试用例是测试的步骤。测试用例决定测试什么。写测试用例要动脑子。测试用例要好。好的测试用例能找到更多问题。有人研究用机器生成测试用例。他们让机器学习。机器学习程序的逻辑。机器自己创造测试用例。这种方法很新。这种方法有一定效果。但机器生成的用例可能很奇怪。工程师需要检查这些用例。
移动应用测试是热点。手机软件很多。手机软件和电脑软件不一样。手机屏幕小。手机用触摸操作。手机有不同的系统。手机有不同的型号。测试手机软件很麻烦。一篇文章专门讨论这个。文章说要在真机上测试。真机就是真正的手机。模拟器不够好。模拟器是电脑上的虚拟手机。模拟器和真机有差别。文章列出了一个测试清单。清单包括电池消耗测试。清单包括网络切换测试。清单包括中断测试。比如来电话时软件的反应。这些测试很重要。
测试需要管理。大项目有几千个测试用例。测试过程需要记录。哪些用例通过了。哪些用例失败了。失败了是什么原因。这些信息都要保存。有文章介绍了测试管理系统。这个系统是一个网站。测试人员登录网站。他们在网站上看任务。他们执行测试。他们把结果输入网站。经理在网站上看报告。报告有图表。图表显示测试进度。图表显示问题分布。这个系统帮助团队协作。
性能测试也很关键。软件不仅要能用。软件还要快。很多人同时用软件。软件不能慢。软件不能崩溃。性能测试模拟很多用户。这些虚拟用户一起操作软件。系统监控软件的反应。系统记录响应时间。系统记录资源使用。资源包括CPU和内存。文章分析了一个在线商店的例子。模拟一万人同时购物。服务器压力很大。测试发现了瓶颈。瓶颈在数据库查询环节。工程师优化了查询。优化后速度快了。
文章里有很多数据。数据来自实验。实验有具体步骤。实验有结果数字。数字证明观点。比如一个工具比另一个工具快百分之二十。比如一种方法多发现了百分之十五的缺陷。这些数字让人相信。
读这些文章有困难。文章是英文写的。专业词汇多。句子很长。需要慢慢读。需要查字典。有时读不懂。需要反复读几遍。读懂了就有收获。
这些文章是别人的工作。我们做毕业设计可以参考。我们不能照抄。我们要理解思想。我们要思考怎么用。我们的项目可能小。我们的时间可能短。我们可以选简单的方法。我们可以用开源工具。开源工具不要钱。开源工具有很多人用。文档也丰富。
写毕业论文要提到这些文章。我们要说明读了什么。我们要说明别人做了什么。我们要说明我们的选择。我们的测试计划从哪里得到启发。我们用了哪个工具。我们为什么用这个工具。这些都要写清楚。
软件测试领域一直在变。新技术不断出现。人工智能用在测试上。云测试平台也多了。测试变得更方便。我们需要持续学习。读文章是学习的一种。做完毕业设计还要学习。
实践很重要。光读文章不够。要动手做。要运行测试。要看测试结果。要分析失败原因。要修复问题。这个过程很具体。这个过程有挑战。解决问题能提高能力。