在线考试小程序自动组卷
发布于 4 年前 作者 jingsong 3439 次浏览 来自 分享

前言

提到在线考试,有一个话题不能绕过去,那就是自动组卷的逻辑,

之前在某小程序小试牛刀,当时用了三个云函数分别获取单选题40道、多选题20道,判断题20道

但是一直没有纳入我的产品功能序列中,最近几天在规划我的考试小程序V4.0的功能点,又重拾了这个功能,现在分析下

需求

在某1000道题的题库中,随机抽取

  1. 单选 40道题 每题1分
  2. 多选 20道题 每题 2分
  3. 判断 20道题 每题1分

这样组卷总共100分

逻辑

首先会想到两种方案:

方案一:一个云函数一次获取1000道题,然后分别提取单选、多选、判断到三个数组中,然后乱序,各提取40、20、20

方案二:三个云函数分别提取单选、多选、判断各40、20、20

当前采用方案为方案二,运行过程如下

1000条记录,组卷逻辑云函数用时257ms,完全可以接受,完美的

具体代码实现时,参考了下面示例代码

https://developers.weixin.qq.com/miniprogram/dev/wxcloud/guide/database/read.html

体验

总结

从线上运行来看,这种方案算是当下最完美的一个方案,如果有类似需求可以参考

未完待续

1 回复

怎样保证1000道题 中至少单选、多选、判断各40、20、20 ??

如果多选题只有19题呢?

回到顶部