第一章 软件测试介绍
一、软件测试行业介绍
目标:
1.理解软件测试的定义
2.知道为什么需要软件测试
3.知道为什么选择软件测试
4.知道为什么不让开发自c己做测试
注意:想进入软件测试这一行,就要先了解测试行业的基本情况
1、软件测试的定义
软件测试:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。
简单地说:软件测试是一种实际输出和预期输出之间的审核或者比较的过程。
2、为什么需要软件测试
每年软件bug会让整个市场经济带来近600亿美元的损失!
3、为什么选择软件测试
1.薪资高
2.市场需求量大
4、为什么不让开发自己做测试
1.思维定式
2.测试力度
3.关注度
二、软件测试核心课程介绍
目标:
1.知道软件测试的核心课程内容
1、功能测试
需求:针对TPshop项目的登录模块进行功能测试
注意:分为正向测试和逆向测试,也就是手工测试
正向测试:按照正常的操作可以正常登录成功
逆向测试:故意输入错误,检查是否有错误提示
2、自动化测试
需求:针对TPshow项目的登录模块实现自动化测试
import time import unittest from selenium import webdriver class TestLogin(unittest.TestCase): """ 对登录模块的功能进行测试 """ def setUp(self) -> None: self.driver = webdriver.Chrome() self.driver.maximize_window() self.driver.implicitly_wait(10) self.driver.get("http://localhost/") # 点击首页的‘登录’链接,进入登录页面 self.driver.find_element_by_link_text("登录").click() def tearDown(self) -> None: self.driver.quit() def test01_login_success(self): """登录成功""" # 输入用户名、密码、验证码 self.driver.find_element_by_id("username").send_keys("13012345678") self.driver.find_element_by_id("password").send_keys("123456") self.driver.find_element_by_id("verify_code").send_keys("8888") # 点击‘登录’ self.driver.find_element_by_name("sbtbutton").click() # 断言提示信息 time.sleep(3) self.assertIn("我的账户", self.driver.title) def test02_login_username_is_not_exist(self): """账号不存在""" # 输入用户名、密码、验证码 self.driver.find_element_by_id("username").send_keys("13099999999") self.driver.find_element_by_id("password").send_keys("123456") self.driver.find_element_by_id("verify_code").send_keys("8888") # 点击‘登录’ self.driver.find_element_by_name("sbtbutton").click() # 断言提示信息 msg = self.driver.find_element_by_class_name("layui-layer-content").text print("msg=", msg) self.assertIn("账号不存在", msg) def test03_login_password_is_error(self): """密码错误""" # 输入用户名、密码、验证码 self.driver.find_element_by_id("username").send_keys("13012345678") self.driver.find_element_by_id("password").send_keys("error") self.driver.find_element_by_id("verify_code").send_keys("8888") # 点击‘登录’ self.driver.find_element_by_name("sbtbutton").click() # 断言提示信息 msg = self.driver.find_element_by_class_name("layui-layer-content").text print("msg=", msg) self.assertIn("密码错误", msg)
3、接口测试
需求:针对TPshow项目的登录模块实现接口测试
4、性能测试
需求:针对TPshow项目,模拟实现100个用户同时登录系统
三、前置知识学习
目标
1.知道学习软件测试需要具备的基础知识
1.学习软件测试需要具备的基础知识
为了更好的学习软件测试的相关技能,需要具备一定的基础知识,需要学习的基础知识包括:
- 计算机基础
- 前端知识
- 后端知识
- 软件测试理论