| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 开发测试 -> (Junit单元测试、NIO(异步IO))day19javaSE基础查漏补缺 -> 正文阅读 |
|
[开发测试](Junit单元测试、NIO(异步IO))day19javaSE基础查漏补缺 |
Junit单元测试、NIO(异步IO)
1.单元测试:单独的测试某一个方法的运行2.导完是不是可以删除吉ar包?不能删除,删除了,类里面就不能导包了 3.注解是一个数据类型4.点击类的三角,会全部执行,但是不是按顺序运行的点击模块run all test,里面的所有test方法也会运行。 5.什么测试方法可以直接运行?1)没有添加@Test注解的方法,不能junit单独运行 2)junit只能运行,public修饰的,没有返回值,没有参数的非静态方法 6.想运行静态等方法怎么办1)先创建一个可以直接运行的测试方法 2)在里面调用其他方法。 7.Junit相关注解
注:before不能加在静态方法上 8.测试方法注意事项1)junit的注意事项:不是所有的方法都能使用junit单元测试运行 2)如何运行测试方法 选中方法名 --> 右键 --> Run ‘测试方法名’ 运行选中的测试方法 选中测试类类名 --> 右键 --> Run ‘测试类类名’ 运行测试类中所有测试方法 选中模块名 --> 右键 --> Run ‘All Tests’ 运行模块中的所有测试类的所有测试方法 3)如何查看测试结果 绿色:表示测试通过 红色:表示测试失败,有问题 4)断言,Assert.asserEquals,预判错误就会抛断言异常。 9.同步异步,阻塞非阻塞[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7GWzULDw-1639407035397)(C:\Users\xiu\AppData\Roaming\Typora\typora-user-images\1639360751654.png)] 阻塞:Sever Socket.accpet 和 is.read 也是阻塞的方法。 10.请说出“同步”与“异步”的区别。同步是一种可靠的有序运行机制,当我们进行同步操作时,后续的任务是等待当前调用返回,才会进行下一步;而异步则相反,其他任务不需要等待当前调用返回,通常依靠事件、回调等机制来实现任务间次序关系 11.请说出“阻塞”与“非阻塞”的区别。在进行阻塞操作时,当前线程会处于阻塞状态,无法从事其他任务,只有当条件就绪才能继续,比如ServerSocket新连接建立完毕,或者数据读取、写入操作完成;而非阻塞则是不管IO操作是否结束,直接返回,相应操作在后台继续处理。 12.字符流底层也是用的字节数组,是不是跟bytebuffer,一样啊???13.请说出Buffer的allocate()与allocateDirect()方法的区别。在堆中创建缓冲区:allocate(int capacity) 在系统内存创建缓冲区:allocatDirect(int capacity) 在堆中创建缓冲区称为:间接缓冲区,在系统内存创建缓冲区称为:直接缓冲区,间接缓冲区的创建和销毁效率要高于直接缓冲区,间接缓冲区的工作效率要低于直接缓冲区。 14.系统内存比堆内存读取要快嘛?系统内存和系统交互的快 15.为啥但是放在系统内存中的ByteBuffer我们不能直接使用 ?因为这是内核的内存,只能由操作系统来使用。 16.ByteBuffer的使用[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-X5z4hlnW-1639407035398)(C:\Users\xiu\AppData\Roaming\Typora\typora-user-images\1639363567687.png)] ByteBuffer有三个重要的属性: capacity:ByteBuffer底层其实是一个字节数组,capacity代表数组的长度。 注意:存满了再存会咋样? 会报错。 17.ByteBuffer 是缓冲区,可用来减少物理磁盘的读写。18.mark标记,reset:重置position位置到mark。reset必须配合mark使用。 19.run with coverage的作用?查看单元测试覆盖度 //三太子敖丙关注一下 20.高速缓存,MapTypeBuffer原理。–内存到内存的复制被读取的文件,和被写入的文件,都会实时映射到内存中 所以就是内存到内存的复制。 21.实时映射,是咋做出来的看MappedByteBuffer底层原理 22.能把大文件分成 n个小文件再复制不?可以逻辑分段存储,不可以物理分段。 23.内核空间和用户空间内核空间 是操作系统 内核代码运行的地方,用户空间 是 用户程序代码运行的地方。当应用进程执行系统调用陷入内核代码中执行时就处于内核态,当应用进程在运行用户代码时就处于用户态。 24.MapperBtyeBuffer写的比被读取文件多了:会报cannot extend file to required size–无法将文件扩展到所需大小25.请说出Buffer的flip()方法的作用。Buffer有两种模式,写模式和读模式。在写模式下调用flip()之后,Buffer从写模式变成读模式。 那么limit就设置成了position当前的值(即当前写了多少数据),postion会被置为0,以表示读操作从缓存的头开始读,mark置为-1。 |
|
开发测试 最新文章 |
pytest系列——allure之生成测试报告(Wind |
某大厂软件测试岗一面笔试题+二面问答题面试 |
iperf 学习笔记 |
关于Python中使用selenium八大定位方法 |
【软件测试】为什么提升不了?8年测试总结再 |
软件测试复习 |
PHP笔记-Smarty模板引擎的使用 |
C++Test使用入门 |
【Java】单元测试 |
Net core 3.x 获取客户端地址 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/18 6:39:01- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |