自动化测试 — selenium + Java 将人为驱动的测试行为转化为机器执行的过程。自动化测试包括UI自动化,接口自动化,单元测试自动化。按照这个金字塔模型来进行自动化测试规划,可以产生最佳的自贡话测试产出投入比(ROI),可以用较少的投入获得很好的收益。
关于测试分类 界面测试(简称UI测试,指按照界面的需求(一般是UI设计稿)和界面的设计规则,对我们软件界面所展示的全部内容进行测试和检查,一般包括如下内容:① 验证界面内容显示的完整性,一致性,准确性,友好性。比如界面内容对屏幕大小的自适应,换行,内容是否全部清晰展示;② 验证整个界面布局和排版是否合理,不同板块字体的设计,图片的展示是否符合需求;③ 对界面不同控件的测试,比如,对话框,文本框,滚动条,选项按钮等是否可以正常使用,有效和无效的状态是否设计合理;④ 界面的布局和色调符合当下时事的发展。
如何设计测试用例 需求文档 → 梳理需求(掌握需求)→ 针对文档设计测试用例(基于需求设计测试用例)基于需求设计测试用例是测试设计和开发测试用例的基础,第一步就要分析测试需求,验证需求是否正确、完整、无二义性,并且逻辑自洽。在需求正确的基础上细化测试需求,从测试需求提炼出一个个测试点或者测试项,然后根据每一个测试点进行测试用例的设计;在分析测试需求时,一般分为和很明显,这样设计出来的测试用例很难穷举完,而且这只是一个小小的功能,还会存在测试遗漏的问题。
软件测试生命周期、BUG描述与处理策略 需求分析:需求是否完整、是否正确测试计划:确定由谁测试、测试的起止时间、设计哪些模块测试设计、测试开发:写测试用例(手工、自动化测试用例)、编写测试工具执行测试用例测试评估:测试人员产生测试报告。
测试的基础概念 测试用例是一组集合,包含测试环境、测试数据、预期结果、操作步骤......测试用例用户注册操作步骤期望结果进入注册页面,选择注册系统展现注册页面输入符合要求的单位名称、单位邮箱、密码、确认密码、组织机构代码、验证码,并确认同意《用户注册协议》,提交注册信息系统进行注册操作,发送激活邮件。注册成功后,跳转到注册成功页面,并提示用户进行激活操作。进入注册用的邮箱,进行激活操作激活成功用注册的邮箱和密码,进行登录操作登录成功,系统展示欢迎页面测试方式手动重要性。
Redis 直接输入:yum -y install redis;输入命令:vim /etc/redis.conf; 1. 然后在里面将 “bind 127.0.0.1” 注释掉 2. 将 “protected-mode yes” 改为“protected-mode no” 3. (非必须)设置密码:可以使用 “/” 再加上 requirepass 来进行搜索,然后找到 “requirepass foobared”,foobared → 设置成自己的密码,然后再把这行前面的 “#
Spring事务 和 事务传播机制 Spring 中事务的实现这里的 事务 和之前 MySQL的事务 一样,都是表示将⼀组操作封装成⼀个执⾏单元(封装到⼀起),要么全部成功,要么全部失败。Spring 中事务的实现1.编程式事务(手动档)。运行结果:2.声明式事务(自动挡)。
拦截器 之 用户登录判断 Componentpublic class LoginInterceptor implements HandlerInterceptor { // 继承这个接口表示当前是一个自定义拦截器// 生成重写代码,此方法表示在目标方法前调用,返回的是一个 boolean 类型的// 返回 true 表示拦截器校验成功,正常执行// 返回 false 表示拦截器校验失败,不会往下执行@Override// 判断用户是否登录= null) {// 说明用户已经登陆。
Spring AOP AOP 组成的相关概念。AOP(Aspect Oriented Programming):面向切编程。是对某⼀类事情的集中处理,例如网站的登录验证,不使用 AOP 的话发布文章需要一段代码进行验证、编辑文章需要验证......而使用 AOP 的话只需要在某⼀处配置⼀下,需要验证的地方都可以实现了。AOP 是⼀种思想,而 Spring AOP 是⼀个框架,提供了⼀种对 AOP 思想的实现,它们的关系和IoC 与 DI 类似。AOP 组成的相关概念。
动态 SQL 例如在有一些网站进行注册的时候,会要求必须输入邮箱、密码,而那些年龄性别什么的则并不是必填项。假设现在有种情况:全部数据都是非必传的,其中有一个数据传过来了,但是后面没数据就会导致 SQL 语句中多出来了一个 , 逗号就会导致报错。也就是说执行的 SQL 语句并不是固定的,而是不同人的不同操作执行的语句会有所差异。用在 update 修改操作里面的,跟 的使用一样,如果不传的话就不会生成,绑定⽅法参数中的集合,即表示需要 foreach 的是谁。遍历时的每⼀个对象,每次循环的是什么。
spring MVC MVC 是Model View Controller 的缩写,它是软件⼯程中的⼀种软件架构模式,它把软件系统分为模型、视图和控制器三个基本部分。● Model(模型)是应⽤程序中⽤于处理应⽤程序数据逻辑的部分。通常模型对象负责在数据库中存取数据。● View(视图)是应⽤程序中处理数据显示的部分。通常视图是依据模型数据创建的。(这个基本没有了,前后端分离了)● Controller(控制器)是应⽤程序中处理⽤户交互的部分。通常控制器负责从视图读取数据,控制⽤户输⼊,并向模型发送数据。
关于 spring boot 的 目录详解 和 配置文件 以及 日志 spring boot 的配置文件有两种格式,分别是 properties 和 yml(yaml)。这两种格式的配置文件是可以同时存在的,此时会以 properties 的文件为主,但一般都是使用同一种格式的。
Bean 作用域和生命周期 先通过下述代码来感受下 Bean 的作用域然后使用两个不同的类去获取 Bean运行后发现:一个地方改了,这个 Bean 就变了,已经不是原来的值了这是因为 Bean 默认情况下是单例状态(singleton),也就是所有地方的使⽤的都是同⼀个对象,因为单例可以很大程度上提高性能,所以在 Spring 中 Bean 的作⽤域默认就是 singleton 单例模式。
获取 Bean 对象更加简单的方式 获取 bean 对象也叫做对象装配,是把对象取出来放到某个类中,有时候也叫对象注⼊。对象装配(对象注⼊)即DI 实现依赖注入的方式有3 种:1. 属性注⼊2. 构造⽅法注⼊3. Setter 注⼊。
存储 Bean 对象更加简单的方式 如果是在spring-config 中添加 bean 标签来注册内容,每个类都要弄一次就显得麻烦和臃肿了,对于 new 操作而言就没有什么优势了。因此 spring 就引入了注解操作来实现对 Bean 对象的存储。配置扫描路径想要将对象成功的存储到 Spring 中,就需要配置⼀下存储对象的路径,只有在这个路径下的(也包含子路径)所有类,添加了注解才能被正确的识别并保存到 Spring 中。 和 component-san 是可以同时存在的。
关于 Spring 是什么 Spring 就是一个包含了多种工具和方法的 IoC 容器。把 Bean 对象存进 IoC 容器中,从 IoC 中把 Bean 对象取出来。IoC 和 DI 描述的是同一件事,只是再细致区分的话会有所不同:IoC 是一种思想,DI 是一种具体实现的技术。Spring 最核心的功能就是 IoC 容器的 存 和 取。