该公司主要做的是光伏设备的硬件和通过互联网平台的方式进行对光伏电厂发电情况的监控以及系统的远程升级。
从该公司的产品和业务组成,以及面试中的一些相关问答大致可以推断出这个公司确实具有互联网企业中的大数据处理,App端,网页端,以及复杂的业务接口(接口自动化),还有业务逻辑的白盒测试中的一些品质。
问了几个问题
Q1: SQL 语句
查询一张表今日发电量是前三的数据,mysql数据库
select top 3 from today where time =日期 order by发电量 desc; —这个语句有待试验不知道能不能用
select * from DemoTable where time = 日期 order by 发电量 desc limit 0,3;
这个问题在查找资料后发现需要分解来看,首先前N不是重点,前是重点,决定了用desc还是asc,desc就是降序,从大到小排列,也就满足了前三的排列,如果是asc从小到大,就是最后三个的发电量了。
再就是要查出相关的数据进行排序,降序排列,取其中前三个。
今天的问题就差一个排序,还是没有好好复习数据库语句
另一种问题的答案,查询数据的前N行的数据,这个问题不需要排序。
select top 3 from table order by id —sql server语句,有待实验在mysql上行不行。
select from table limit 10; —-mysql语句 查询前10行的数据
select from table limit 10,20; —-mysql语句 查询10-20行的数据
select from table where rownum<=5; —oracle语句
Q2:数据库左联,右联,以哪张表为准
这个问题不难回答,主要是有可能在诈你,正确回答就是左联以左表为准,右联以右表为准。
Q3:数据库左联时,查询后的右表的数据为空,为空,
这个问题意思就是左联后的查询结果右表的为空,那么就是右表的数据被过滤了。
对于想不想要右表的数据在查询结果中,可以看这篇文章
LEFT JOIN右表为空查询不出数据 ——— 链接
Q4: A 服务器传输一个文件到B服务器,linux命令是什么
这个问题其实已经老生常谈了,基本面试中问到linux命令都会问这个问题。
但这次还是失手了。记错了命令,太久没有用。
scp c root@10.80.34.59:/home 上传文件C到远端home目录下
scp h59:/home/d /home 从远端下载
我还给记成了SSH命令,真可惜,面试官还问你确定是ssh吗,我忘了是啥命令了,又怕他诈我,我说我确定。
Q5: app测试和web端的测试的区别是啥
https://www.jianshu.com/p/5bf152b6f496?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation
https://blog.csdn.net/azhaohuiwei/article/details/103344415
等待再整理
Q6:做没做过接口测试
这个问题其实要说做过。然后就是怎么做的问题。不能说现在做的是非主流的接口测试。
Q7: H5页面的测试在app上和浏览器上的区别是什么
Q8:linux命令查看磁盘空间
df -h 查看磁盘各分区大小、已用空间
扩展:
du -sh * 查看当前目录下各个文件及目录占用空间大小
du -sh 目录a 查看a目录的大小
Q9:查看一个进程占用了多少个端口
- lsof -i | grep pid (centos7_不能用),需要在91机器上实验能不能用
2. 根据端口port查进程(某次面试还考过):
lsof -i:port
3. 根据进程pid查端口:
netstat -nap | grep pid
4. 根据端口port查进程
netstat -nap | grep port
[
](https://blog.csdn.net/sunelect1/article/details/113339253)
Q10:查看这个进程有多少个请求连接
https://www.cnblogs.com/EasonJim/p/8098532.html
Q11:modbus规约和iec104规约了解多少
消息的发送分为主站和从站。主站下发指令,从站接收和响应指令,从站不能主动向主站索取信息、
能源管理系统相对于电网调度来说是从站,相对于风机来说是主站。主站只有一个,从站可以有多个。
iec104和modbus最大的区别就是iec104可以下发总召唤,可以主动召唤数据。modbus只有当数据发生扰动才能回触发数据上送。如果数据没有发生变化,从站不会触发数据上送,主站那的数据还是原来寄存器存的数据。
Q12:在线查看日志,有哪些命令可以看
这个问题是多个问题。,看日志有好几个方法
方法1:
tail -n 100 catalina.out // 查询日志尾部最后100行的日志;
tail -n +100 catalina.out //查询100行之后的所有日志;
tail -fn 100 catalina.out //循环实时查看最后100行记录(最常用的)
配合着grep用, 例如 : tail -fn 100 catalina.out | grep — ‘关键字’
less file-name -f 也可以动态查看日志
方法2:
head-n 1000 catalina.out//查询日志文件中的头10行日志;
head-n -1000 catalina.out//查询日志文件除了最后10行的其他所有日志;
方法3:
cat方式 ,cat方式是把第一行到最后一行都打印出来
方法4: sed 命令
只打印第三行
sed -n ‘3p’ /var/log/yum.log
打印第3到第9行
sed -n ‘3,9p’ /var/log/yum.log
sed命令的更多用法,还可以编辑,替换日志中的关键字。
https://www.cnblogs.com/ftl1012/p/sed.html
Q13:在日志中怎么搜关键字?
4种方法
1.less 命令
less log.log
向前搜索
/ : 例如 /123 定位到下一个匹配的文本
向后搜索
shift + G 命令到文件尾部
输入 ?加上你要搜索的关键字例如 ?1213
shift+n 关键字之间进行切换
less命令还可以标记和切换到标记
当使用 less 查看大文件时,可以在任何一个位置作标记,可以通过命令导航到标有特定标记的文本位置。
ma : 使用 a 标记文本的当前位置
‘a : 导航到标记 a 处
2.cat 文件名 | grep “关键词”
cat log.log | grep “train” # 返回log.log中包含train的所有行
3.grep -i "关键词" 文件名 (与方法一效果相同,写法不同)<br /> grep -i "train" log.log # 返回log.log中包含train的所有行<br />[
](https://blog.csdn.net/qq_16525279/article/details/82696780)
4.vi编辑进入后 输入 /关键字 查看,和less类似