【软件测试】Linux操作系统基础知识

  • 以下是软件测试小白关于对Linux操作系统基础知识的学习记录。
  • 学习视频:【小白入门 通俗易懂】韩顺平 一周学会Linux
  • 为什么软件测试需要使用Linux操作系统?
    • Linux系统以其高稳定性和可靠性著称,能够长时间运行而不出现崩溃和错误。这种稳定性对于软件测试尤为重要,因为它确保了测试环境的一致性和可预测性,减少了因系统不稳定而导致的测试失败和结果偏差。
    • Linux的开源特性,测试人员可以自由地查看和修改Linux的代码,并且许多测试工具和框架都是基于Linux平台开发的,这些工具包括Selenium、Apache JMeter等,能够无缝集成进Linux环境,支持功能测试、性能测试和安全测试等多种测试类型。
    • Linux提供了丰富且强大的命令行工具,这些工具对于自动化测试至关重要。

一、Linux操作系统介绍

  • Linux操作系统是一种自由和开放源代码的操作系统,由林纳斯·本纳第克特·托瓦兹(Linus Benedict Torvalds)于1991年10月5日首次发布。
  • 特点:开源免费安全稳定可移植性好高性能
  • 常见发行版本:Debain、Ubuntu、CentOS、RedHat、Fedora等。
  • 应用领域:应用服务器、数据库服务器、网络服务器、虚拟化云计算、嵌入式、个人PC、移动手机等。Linux在服务器领域的应用是最强的。

二、Linux环境搭建

三、Linux目录结构

  • Linux的文件系统采用层级式的树状目录结构,在此结构中的最上层是根目录“/”,然后在此目录下再创建其他的目录。
    在这里插入图片描述
  • 具体目录结构:
    • /bin:存放经常使用的命令。
    • /sbin:存放系统管理员使用的系统管理程序。
    • /home:存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一般该目录名以用户的账号命名。
    • /root:系统管理员的主目录
    • /lib:系统开机所需要的最基本的动态连接共享库。
    • /lost+found:一般情况下是空的,当系统非法关机后,会存放一些文件。
    • /etc:存放所有的系统管理所需要的配置文件和子目录。
    • /usr:存放用户安装的应用程序和文件。
    • /boot:存放启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。
    • /proc:虚拟目录,系统内存的映射,访问该目录获取系统信息。
    • /srv:存放一些服务启动后需要提取的数据。
    • /sys:内核相关文件。
    • /tmp:存放临时文件。
    • /dev:类似于Windows设备管理器,把所有硬件用文件的形式存储。
    • /media:Linux自动识别的设备将会挂载到该目录。
    • /mnt:让用户临时挂载别的系统文件,将外部存储挂载在/mnt/上,进入该目录就可以查看里面的内容。
    • /opt:给主机额外安装软件所存放的目录。
    • /usr/local:安装软件的目标目录,一般是通过编译源码方式安装的程序。
    • /var:存放着在不断扩充的文件,习惯将经常被修改的文件放在该目录下,包括各种日志文件。
    • /selinux:安全子系统,可以控制程序只能访问特定文件,有三种工作模式,可自行设置。

四、Linux远程登录

  • 【说明】为什么需要使用Linux远程登录?
    • Linux服务器是团队共享的,并且正式上线的项目运行在公网上,所以需要远程登录到Linux服务器进行项目管理或开发。
    • 通过远程登录,用户可以在任何地方对Linux系统进行管理和操作,无需直接访问物理机器。
  • 【操作】远程登录
    • 确定远程登录对象IP地址
      • ifconfig
    • 验证本地端是否与远程端网络是否通畅
      • ping ‘远程端IP地址’
    • 使用远程登录工具
      • Xshell
  • 【操作】远程上传下载
    • 前面步骤不变
    • 使用远程上传下载工具
      • Xftp
  • 【练习】远程登录
    • 这里使用Windows10模拟本地端,虚拟机(FsCentOS)模拟Linux服务器。
    • 先下载安装远程登录工具(Xshell 8)。官网下载
    • 安装完成如下图
      在这里插入图片描述
  • 步骤一:查远程登录对象IP地址;开启虚拟机->桌面右键打开终端->输入命令“ifconfig”;
    在这里插入图片描述
  • 步骤二:验证本地Windows与Linux网络是否通畅;Win+R、cmd打开命令提示符->ping “虚拟机 IP 地址”;
    在这里插入图片描述
  • 步骤三:使用远程登录工具Xshell;打开Xshell->新建会话->名称自定义,主机为登录端IP地址,其他默认->点击确定
    在这里插入图片描述
  • 弹出窗口点击连接->点击一次性接受(下次连接需要输入用户和密码)或接受并保存
    在这里插入图片描述
  • 输入用户名和密码(虚拟机上设置的用户,可以用root或普通用户) ->连接成功
    在这里插入图片描述
  • 【练习】远程上传下载
  • 先下载工具(Xftp 8)官网下载
  • 连接远程Linux和上面步骤相同
  • 连接成功如下图
    在这里插入图片描述
  • 本地上传文件到远程端:直接拖拽或双击要上传的文件;远程端下载到本地:直接拖拽或双击要上传的文件;
    在这里插入图片描述

五、Linux Vi和Vim编辑器

  • 学习文档:菜鸟教程-Linux vi/vim
  • 【说明】
    • Vi文本编辑器是Linux内置的编辑器,而Vim编辑器可以看做是Vi的增强版本。Vim具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,以及代码补全、编译、错误跳转等方便的编程功能。
  • Vi/Vim的三种模式:普通模式(命令模式)输入模式命令行模式
  • 三种模式切换命令
    • 进入普通模式:vim "编辑文件名+后缀名"
    • 普通模式->输入模式:i
    • 普通模式->命令行模式::(英文状态)
    • 输入模式->普通模式:ESC
    • 命令行模式->普通模式:输入命令+Enter
    • 退出编辑文件:wq(保存文件并退出)+Enterq(退出)q!(强制退出不保存)
  • vim常用命令
  • 普通模式:
    • 移动到这个档案的第一行:gg
    • 移动到这个档案的最后一行:G
    • 移动到这个档案的第 n 行:nG
    • 删除当前光标所在处的字符:x
    • 剪切当前行:dd
    • 拷贝当前行:yy
    • 粘贴剪贴板内容到光标下方:p(小写)
    • 粘贴剪贴板内容到光标上方:P(大写)
    • 撤销上一次操作:u
    • 重做上一个动作:Ctrl+r
    • 删除光标所在到第一行的所有数据:d1G
  • 输入模式:
    • 移动光标到行首/行尾:Home/End
    • 切换光标为输入/替换模式:Insert
  • 命令行模式:
    • 保存文件:w
    • 向光标之下寻找一个名称为 word 的字符串:/word
    • 从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2:1,$s/word1/word2/g%s/word/word2/g
    • 显示行号:set nu
    • 取消行号:set nonu
  • 【练习】
  • 使用Vim建立一个test.txt文件,插入5条数据:vim test.txt -> i -> 插入数据 -> ESC
    在这里插入图片描述
    在这里插入图片描述
  • 拷贝第四行数据粘贴到第六行:光标移动到第四行 -> yy -> 光标移动到第五行 -> p(小写,粘贴剪贴板内容到光标下方)
    在这里插入图片描述
  • 拷贝三行数据到第四行下面:光标移动到第一行 -> 3yy -> 光标移动到第四行 -> p
    在这里插入图片描述
  • 查找“第四行”关键字:/第四行 -> Enter -> n(按下 n 后,会向下继续搜寻) ;取消高亮::noh
    在这里插入图片描述
  • 查询关键字“第四行”将其替换为“第一行”,删除第三行之前的数据::1,$s/第四行/第一行/g -> ESC -> 光标移动到第三行 -> d1G
    在这里插入图片描述

六、Linux关机/重启命令

  • 语法:shutdown [-t seconds] [-rkhnc] time [message]
  • 使用权限:root用户(系统管理员)
  • 【说明】:
    • -t seconds : 设定在几秒钟之后进行关机程序。
    • -k : 并不会真的关机,只是将警告讯息传送给所有使用者。
    • -r : 关机后重新开机。
    • -h : 关机后停机。
    • -n : 不采用正常程序来关机,用强迫的方式杀掉所有执行中的程序后自行关机。
    • -c : 取消目前已经进行中的关机动作。
    • time : 设定关机的时间。
    • message : 传送给所有使用者的警告讯息。
  • 【练习】
    • 立即关机:shutdown -h now
    • 10秒后关机:shutdown -t 10
    • 1分钟后关机并发送告警信息:shutdown -h 1 "1分钟后将关机"
    • 立即重启:shutdown -r now
    • 取消关机:shutdown -c
  • 【补充】
    • 数据同步:sync
    • Linux sync命令用于数据同步,sync命令是在关闭Linux系统时使用的。
    • 关机或重启前先执行sync命令,将内存中的数据同步到磁盘,以防数据丢失。

七、Linux运行级别

  • Linux允许为不同的场合,分配不同的开机启动程序,这就叫做"运行级别"(runlevel)。也就是说,启动时根据"运行级别",确定要运行哪些程序。
  • 【说明】运行级别类型:
    • 运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动。
    • 运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登录。
    • 运行级别2:多用户工作状态,没有网络服务。
    • 运行级别3:多用户工作状态,有网络服务。
    • 运行级别4:系统未使用保留给用户。
    • 运行级别5:图形界面
    • 运行级别6:系统重启。
  • 查看运行级别:systemctl get-default
    • multi-user.target(类似于运行级别3)。
    • graphical.target(类似于运行级别5)。
### 回答1: 很抱歉,我是AI语言模型,无法回答关于面试题的问题。但是,我可以为您提供一些关于Linux软件测试基础知识和技能,以帮助您准备面试。 Linux软件测试是指在Linux操作系统上对软件进行测试,以确保其质量和稳定性。以下是一些可能涉及到的主题: 1. Linux基础知识:了解Linux操作系统的基本概念、命令行操作和文件系统结构等。 2. 软件测试基础知识:了解软件测试的基本概念、测试类型、测试方法和测试流程等。 3. 自动化测试:了解自动化测试的基本概念、工具和技术等,如Selenium、JUnit、TestNG等。 4. 软件测试工具:了解常用的软件测试工具,如JUnit、TestNG、Selenium、JMeter等。 5. 编程语言:了解至少一种编程语言,如Java、Python、C++等。 6. 软件开发流程:了解软件开发流程,如敏捷开发、瀑布模型等。 7. 软件测试文档:了解软件测试文档的类型和内容,如测试计划、测试用例、缺陷报告等。 希望这些信息能对您有所帮助。祝您面试成功! ### 回答2: 在Linux软件测试面试中,考官会涵盖多个方面的问题,包括测试方法、测试工具、测试计划、测试策略等等。以下是我对这些问题的回答: 1.你是如何设计测试用例的? 测试用例设计是测试工作的重要部分。我会首先分析需求文档,了解软件系统的功能和特性,然后根据不同场景和功能模块设计出相应的测试用例。同时,我也会考虑使用不同的测试技术,例如黑盒测试和白盒测试,以确保测试的完备性和充分性。 2.你熟悉哪些Linux测试工具? 在Linux测试中,常用的工具包括JMeter(压力测试工具)、Selenium(自动化测试工具)、Postman(API测试工具)、Wireshark(网络分析工具)等。我熟悉这些工具的使用方法和应用场景,并能够灵活地运用它们来进行测试工作。 3.你如何进行测试计划和策略的制定? 在制定测试计划和策略时,我会首先了解软件开发周期和项目需求,并与开发人员和产品经理沟通以获取尽可能多的信息。然后,我会考虑测试环境的搭建、测试时间表的安排、测试用例的设计、测试数据的准备等方面,以确保测试工作的全面性和高效性。 4.你如何进行缺陷管理? 在测试过程中,缺陷管理是不可或缺的一部分。我会使用一些流行的缺陷管理工具,如Redmine和Jira,跟踪和管理每个缺陷的状态和进度。此外,我也会与开发团队紧密协作,在缺陷修复后进行验证。 总的来说,在Linux软件测试的面试中,除了技术方面的问题,候选人的沟通能力、团队协作和问题解决能力等方面也会受到考察。因此,我们需要具备综合素质和实际经验,以在职场上更好地发挥自己的能力。 ### 回答3: Linux软件测试面试题主要涉及Linux操作系统软件测试相关的知识和技能,下面是一些典型问题及其回答: 1. 什么是Linux操作系统?它有哪些应用领域? Linux操作系统是一种自由和开放源代码的操作系统,具有高度的可定制性和安全性。Linux操作系统广泛应用于服务器、嵌入式设备、桌面电脑和大型计算机等领域。 2. 什么是软件测试软件测试的主要目的是什么? 软件测试是指对软件系统进行检查和验证的过程,目的是发现和解决软件中的错误和问题。软件测试的主要目的是确保软件系统具有高质量、高可靠性和高稳定性等特性。 3. 什么是黑盒测试?如何进行黑盒测试? 黑盒测试是指在不知道软件内部实现细节和代码的情况下,仅根据软件外部运行特征进行测试。黑盒测试通常通过输入一组特定的测试数据,检查系统是否按照预期结果执行。黑盒测试可以使用测试用例、场景模拟、函数点分析等方法进行。 4. 什么是白盒测试?如何进行白盒测试? 白盒测试是指在了解软件内部实现和代码结构的情况下,对软件进行测试。白盒测试通常涉及静态代码分析、代码覆盖率测试和性能分析等技术。白盒测试的目的是检查代码实现和结构是否符合设计要求,是否可以满足用户需求。 5. 如何进行性能测试?常见的性能测试方法有哪些? 性能测试是指通过模拟实际使用场景和负载,测试软件在不同环境下的性能表现。常见的性能测试方法有负载测试、压力测试、容量测试和基准测试等。性能测试可以使用多种工具和框架来完成,如JMeter、LoadRunner、Gatling等。 总之,Linux软件测试涉及多个领域,需要测试人员具备广泛的知识和技能。测试人员应该深入了解Linux操作系统软件测试的基本原理和方法,以及灵活应用各种测试工具和框架,才能更好地完成软件测试任务。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值