1.点我达2019测开卷

一个最大的感受就是,题目不难,有的卷子单选多选是交叉的,一定要擦亮眼睛,看好是单选还是多选。竟然有多选题只有一个答案。

目录

1.HTTP协议的请求方式: POST、GET、HEAD、OPTIONS作者:开心呀点击查看具体:牛客网公司真题_免费模拟题库_企业面试|笔试真题

2.状态码描述:

3.Mysql存储引擎:InnoDB、MyISAM

4.事务的特性:隔离性、原子性、一致性、持久性

5.对于线性列表的描述:存储空间不一定连续,且元素的存储顺序是任意的

6.白盒测试用例的设计:判定条件覆盖、路径覆盖、代码走查

7.以下这段代码的圈复杂度为(6)

8.以下关于java堆栈的说法,正确的有(ABCD)

9.HashMap和HashTable的区别 ACD

10.Linux文件权限长度一共10位,分成四段,第三段表示的是C文件所有者所在组(群组)的权限

11.对敏捷测试的理解

12.支付宝APP->付款码功能,你会设计哪些测试用例?

13.对持续集成、持续交付的理解

14.计算1-200之间有多少个素数,并输出所有素数

16.编写存储过程,根据输入的岗级,输出该岗级下所有的员工ID、员工姓名、员工工资

17.假设要把微信的基础功能介绍给老奶奶(假设奶奶文化基础较低,也没有接触过智能手机),你会如何介绍?


1.HTTP协议的请求方式: POST、GET、HEAD、OPTIONS
作者:开心呀
点击查看具体:牛客网公司真题_免费模拟题库_企业面试|笔试真题

2.状态码描述:

200请求成功

500服务器错误

301临时移动,客户端继续使用原有URI

充当网关或代理的服务器,从远端服务器接收到一个无效请求

3.Mysql存储引擎:InnoDB、MyISAM

4.事务的特性:隔离性、原子性、一致性、持久性

5.对于线性列表的描述:存储空间不一定连续,且元素的存储顺序是任意的

6.白盒测试用例的设计:判定条件覆盖、路径覆盖、代码走查

7.以下这段代码的圈复杂度为(6)

     public String case2(int index, String string) {

       String returnString = null;

       if (index < 0) {

           throw new IndexOutOfBoundsException("exception <0 ");

       }

       if (index == 1) {

           if (string.length() < 2) {

              return string;

           }

           returnString = "returnString1";

       } else if (index == 2) {

           if (string.length() < 5) {

              return string;

           }

           returnString = "returnString2";

       } else {

           throw new IndexOutOfBoundsException("exception >2 ");

       }

       return returnString;

    }

什么是圈复杂度?

圈复杂度用来衡量一个模块判定结构的复杂程度。计算公式是V(G) = e – n + 2 , e 代表在控制流图中的边的数量,n代表节点数量,起点和终点也算,所有的终点只算一次(不管多少return或throw都只能算一次)

1.点我达2019测开卷_第1张图片

如图,e = 11,n = 7,V(G) = 11-7 +2 = 6

8.以下关于java堆栈的说法,正确的有(ABCD)

A栈(stack):是一个先进后出的数据结构,通常用于保存方法(函数)中的参数,局部变量

B在java中,所有基本类型和引用类型都在栈中存储.栈中数据的生存空间一般在当前scopes内

C在java中,所有使用new xxx()构造出来的对象都在中存储

D不同于堆栈的好处是:编译器不需要知道要从堆里分配多少存储区域,也不必知道存储的数据在堆里存活多长时间

9.HashMap和HashTable的区别 ACD

A.HashMap和Hashtable都实现了Map接口

B.Hashtable允许键和值是null,而HashMap不允许键或者值是null

    Hashtable不允许键和值是null,而HashMap允许键或者值是null

C.Hashtable是同步的,而HashMap不是

D.Hashtable提供了对键的列举(Enumeration)

10.Linux文件权限长度一共10位,分成四段,第三段表示的是C文件所有者所在组(群组)的权限

Linux用户分为:拥有者、组群(Group)、其他(other)
linux中的文件属性过分四段,如 - rwx  rwx  r--

第一段 是指文件类型,  - 表示这是个普通文件
文件类型有:
-为:表示普通文件
d为:表示文件夹
l为:表示链接文件,可以理解为 windows中的快捷方式(link file)
b为:表示里面可以供存储周边设备
c为:表示里面为一次性读取装置

2 3 4段分别表示拥有者、群组、其他的权限,r对应4代表读,w对应2代表写,x对应1代表执行

11.对敏捷测试的理解

敏捷测试的特点是个体与交互重于过程和工具,可用的软件重于完备的文档。轻文档,轻流程,重目标,重产出,拥抱变化。

流程:发布计划会议、产品经理收集需求,形成user story ,排除本次迭代的user stroy,形成sprint backog

迭代计划会议:把user story 分解成一个个小的任务,分配给开发,制定计划

每日站会:昨天干了什么,今天的计划产品演示会议:给甲方、用户演示产品,PM把不足的地方收集形成user story,进行下一次迭代

回顾计划会议:回顾整个迭代过程,处理不足,在下一次迭代中改进,优化迭代流程

12.支付宝APP->付款码功能,你会设计哪些测试用例?

1.付款码立即打开(打开之后,关闭网络),扫描支付成功,余额减少

2.付款码立即打开(打开之后,不关闭网络),扫描支付成功,余额减少

3.付款码打开5分钟之后(付款码有一个过期时间,过期需要重新刷新,但不清楚过期时间具体是多少,因此写5分钟),扫描失败

4.对付款码进行截图,截图失败

5.对付款码进行拍照,5分钟内扫描支付成功,余额减少

6.对付款码进行拍照,超出5分钟支付失败

7.点击查看付款码数字,扫描支付成功,余额减少

8.切换优先支付银行卡(银行卡内无余额,自动换卡支付)

9.切换优先支付银行卡,卡里余额足够支付,支付成功

10.点击二维码进行全屏显示

11.重复支付提醒

13.对持续集成、持续交付的理解

持续集成(Continuous Integration,CI)是指开发团队频繁地将代码集成到主干分支,并进行自动化构建、测试和部署的过程。通过持续集成,开发团队可以更早地发现和解决代码集成问题,确保代码的质量和稳定性。持续集成的目标是减少集成问题的风险,提高开发效率。

持续交付(Continuous Delivery,CD)是在持续集成的基础上,将经过测试的代码交付给用户或部署到生产环境的过程。持续交付的目标是确保软件的可靠性和可部署性,使得软件可以随时随地进行部署和交付。通过持续交付,开发团队可以更快地将新功能和修复的问题交付给用户,提高软件的交付速度和用户满意度。

持续集成和持续交付是敏捷开发和DevOps方法论的重要实践,可以帮助团队更好地协作、提高软件质量和交付效率。

14.计算1-200之间有多少个素数,并输出所有素数

public class PrimeNumbers {
    public static void main(String[] args) {
        int count = 0; // 计数器,计算1-200之间有多少个素数

        for (int i = 1; i <= 200; i++) {
            boolean isPrime = true; // 假设该数是素数

            for (int j = 2; j <= Math.sqrt(i); j++) {
                if (i % j == 0) { // 进入该语句,证明不是素数
                    isPrime = false;
                    break;
                }
            }

            if (isPrime) {
                count++;
                System.out.println(i + "是素数");
            }
        }

        System.out.println("1-200的素数有" + count + "个");
    }
}

15.有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?并打印出来.JAVA

import java.util.HashSet;
import java.util.Set;

public class ThreeDigitNumber {
    public static void main(String[] args) {
        int sum =0;
        for (int i = 1; i <= 4; i++) {
            for (int j = 1; j <= 4; j++) {
                for (int k = 1; k <= 4; k++) {
                    if (i != j && i != k && j != k) {
                        int number = i * 100 + j * 10 + k;
                        sum++;
                        System.out.println(number);
                    }
                }
            }
        }
        
        System.out.println("共有" + sum + "个互不相同且无重复数字的三位数。");
    }
}

16.编写存储过程,根据输入的岗级,输出该岗级下所有的员工ID、员工姓名、员工工资

1.点我达2019测开卷_第2张图片

代码如下:

drop table if emlployee_info exits;

create table employee_info ('Employee_id' int not null, 'Employee_name' varchar(50) null, 'Employee_level' varchar(50),

primary key('Employee_id'));

drop table if emlployee_salary exits;

create table employee_salary ('Employee_id' int not null, 'Employee_level' int,primary key('Employee_id'),references Employee_info(Employee_id));

select i.Employee_id,Employee_name,s.Employee_level from

( Employee_info i left join Employee_salary s on i.Employee_id = s.Employee_id ) t

group by s.Employee_id having Employee_id = *?

17.假设要把微信的基础功能介绍给老奶奶(假设奶奶文化基础较低,也没有接触过智能手机),你会如何介绍?

1.添加好友

2.语音聊天、视频聊天

3.发送、接收语音

4.转账、红包,扫码支付

你可能感兴趣的:(测开真题,java,测试用例)