[评价] 107-1 软件测试 王凡

楼主: Ryspon (Ry)   2019-02-03 18:58:58
※ 本文是否可提供台大同学转作其他非营利用途?(须保留原作者 ID)
(是/否/其他条件):是
哪一学年度修课:107-1
ψ 授课教师 (若为多人合授请写开课教师,以方便收录)
王凡
λ 开课系所与授课对象 (是否为必修或通识课 / 内容是否与某些背景相关)
电机所 选修
δ 课程大概内容
基本上就是讲述一些能够应用在软件测试上的基础理论,像是 Control flow graph 的概念,
怎么样去分析一段程式码,搭配一些 Coverage (node/path) 的理论计算等等。
课程后段也会包括一些逻辑运算技巧,像是卡诺图化简等等的工具。
Ω 私心推荐指数(以五分计) ★★★★★
想上凉课:★★★★★
想上甜课:★★★
想学东西:★★
整体私心:★
η 上课用书(影印讲义或是指定教科书)
课程投影片几乎都是拿参考教科书作者所发布的投影片来上课,
相关资讯可以参考 https://reurl.cc/DXeGm
μ 上课方式(投影片、团体讨论、老师教学风格)
上课的话老师几乎就是照念投影片,因为选课人数非常少(上限 20 人),
所以就也没什么团体讨论,老师偶尔讲到无聊会问台下同学 “你知不知道 XXX ? ”
XXX 就像是多型、这段 code 哪里怪怪的之类的问题,不会的话老师也会笑笑带过这样。
σ 评分方式(给分甜吗?是扎实分?)
Hand-writing homework 10%
Project x 3 各 15%
Midterm report 20%
Final exam 25%
我觉得我不到真的很认真,最后拿 A。
ρ 考题型式、作业方式
手写作业就是去写老师勾的课本习题,不会公布分数或解答,共五份,每份 2% 。
三个 projects 都是要我们自己找测试的 library 或 function 之类的,再学着用 Junit、Selenium
自己写测试脚本去测试你选的 SUT (System Under Test),比较不同的是第三个是要用老师实验室开发
的工具去进行测试。
成绩计算有个公式, rasScore = #bugs-found + line-coverage * log2(Total lines of your SUT),
最后 projectScore = 15 * rawScore / (所有学生中最高的 rawScore)。
期中报告就是挑一篇相关的 paper 在课堂上报告,蛮轻松的。
期末考原本讲是考跟手写作业 80% 相关的,但后来还是有不少作业里的概念、计算都没考...
基本上就是给一段 code 叫你画 CFG 、计算各种 coverage 等等的。
ω 其它(是否注重出席率?如果为外系选修,需先有什么基础较好吗?老师个性?
加签习惯?严禁迟到等…)
虽然人蛮少但不点名,老师人很好,外系的话感觉还是要有一点程式基础比较好。
Ψ 总结
我个人修下来是不推拉,其中一个不推的点是老师根本就照着念投影片念,虽然感觉老师是懂很多东西的,
但我预期的内容是要能够将理论运用到实作上,而不是读到后来感觉像是在背东西,觉得没有带走什么知识。
作业的部分其实前两份还不错,可以学学怎么使用 Junit、Selenium ,算是有点收获,但最后一个要用老师
实验室制作的测试工具,工具大致上是用 python 实作的,在自己环境执行需要自己装很多套件,还限定版本,
我个人是觉得可以附个 requirements.txt 比较容易在新电脑重建环境。
这样就算了,使用文件参差不齐,有时候执行还有 bug ,写得很不爽...
另外就是助教感觉不太用心,最后一个 projecct 说明到 deadline 前一个礼拜才公布,还要同学去提醒他,
修到后来真的是有点傻眼...

Links booklink

Contact Us: admin [ a t ] ucptt.com