业余时间写了个个人项目(一个桌面 GUI 应用),代码量是自己个人项目中最大的,但目前没有多少用户,主要是自己在抽空开发和测试,经常因为功能改动或者优化导致出现一些难以发现的 bug ,很多时候 bug 要过好久才发现,绝大部分的用户宁愿直接卸载应用也懒得发一封反馈邮件。导致很多用户默默流失。
现在也做了一些补救措施,比如延长自行测试的时间,极大地简化反馈的流程并主动无打扰的情况下邀请反馈,尽可能的减少破坏性的更改,并且在考虑给予终身免费会员来邀请一些朋友来作为活跃用户。
我个人实在是认知有限,想恳请各位经验开发人士能够慷慨的指点一二。
1
h1298841903 19 天前 1
1. 是个单机应用,无法联网吗? 正常来说,会对每个操作路径都进行埋点,看哪一步操作中间断掉了,数据有异常,可以及时发现。
2. 另外,还是要完善自动化测试,编写 UI 点击脚本。 3. 此外,可以增加不同版本,比如:内测版、先遣版、稳定版。 |
2
ChrisFreeMan OP @h1298841903 感谢回复,应用是本地应用加可选的联网功能,我没有写过 UI 自动化测试脚步,因为处于早期频繁开发状态,担心工作量太大难以维护。应用是上架在 app store ,目前的话有 testFlight 版本,但是未邀请任何其他人参加,不知道怎么找到意愿测试用户。
|
3
fenglirookie 19 天前
Mac 软件呀
|
4
ChrisFreeMan OP @fenglirookie 是的
|
5
hdfg159 19 天前
单元测试全覆盖了吗
|
6
lambdaq 19 天前 1
你是否在寻找:
全链路、全界面免埋点事件跟踪还原监控系统。 |
7
Configuration 19 天前 1
无法绝对避免的,只能是多测试;也可以上 TestFlight 让用户帮你测
|
8
jeesk 19 天前 via Android 1
让 反馈更加容易呗, 增加一个按钮,可以直接上传日志,或者发送邮件,邮件中携带附件。
|
9
jeesk 19 天前 via Android
按钮旁边的文字最好温柔点:
如果您有什么建议和反馈亲随时联系我们, 然后弹出界面,发送邮件或者反馈文字框。 别忘了表达感谢,xx 应用离不开用户的支持。 反馈让应用变得更加好用。 |
10
ChrisFreeMan OP @jeesk 感谢回复🙏目前的话反馈按钮隐藏在 macOS 顶部菜单栏的帮助栏里面,为了不影响界面整洁,我在考虑怎么引入到更合适免打扰的位置,我会加上那些感谢信息的。
|
11
skydcnmana 19 天前 1
单元测试啊,高覆盖的单元测试,每次修改时都跑一遍,就行了
|
12
importmeta 19 天前 1
学过软件工程这门课吗? 可以选择适合自己的软件工程测试阶段常用的测试方法和覆盖标准, 可以找找软件工程书籍看看, 大致看看就行了. 然后再结合 AI 与你的项目代码实践一下, 估计学个几天就差不多了.
|
13
importmeta 19 天前 1
一定要找一个适合你的覆盖标准来写或者生成测试用例, 我也在开发自己的项目, 我也写了好多测试, 我用的路径覆盖, 但是花了我大量的时间
|
14
donaldturinglee 19 天前 1
可以去了解一下 TDD
|
15
ChrisFreeMan OP @importmeta 感谢回复,这方面知识确实薄弱,非科班,我主要也是怕写测试太花时间,本来能专注写代码时间不多,我会了解一下,希望能找到平衡的方法。
|
16
sampeng 18 天前 via iPhone 1
不写单元测试就是这样了,单元测试的最大价值就是保证你改一处不会买一送一。你的担心是多余的,维护单元测试时间和你延长 release 时间没区别。而且吧,现有 ai 最大的辅助地点就是秒写几百行单元测试用例,改吧改吧就能用了。单元测试后补工作量巨大,我的建议是发现一个 bug ,把这个 bug 涉及的函数进行单元测试。但是,后加单元测试有个巨坑:你的代码大概率不适合单元测试,就要重构。从目前来看,可能最合适的就是 ui 的自动化集成测试比较适合。这样一来只需要对 ui 进行黑盒测试。只需要解决数据的先后关系就行了。比对虽有函数都单元测试工作量小多了。相当于你延长发布时间用来写 ui 的单元测试。相当于给自己请了个测试工程师
|
17
ChrisFreeMan OP @sampeng 感谢回复,我还没搞过 UI 自动化测试,看来是有必要了解一下
|