意派Epub360丨典型案例教程:随机测试题
一、案例效果
点击《随机测试题》拷贝模板
二、应用场景
(一)需求简介:
大部分企业、单位具有对内/对外的科普/宣传、培训的答题H5需求,针对宣传目标或考核目标设置一定的题目内容及数量、统计得分及得分用时,还会根据得分情况给用户划分不同的“段位”或称号。
常见答题规则如:
1、单选、多选、判断类型,选择选项为主,题目数量在20~30个以内。
2、假设总题目数量20个,答题数量限制为每人答题10道,每题固定分值为10分,总分合计100分。
3、每次答题都会将每一题的分数累积,最后累加至总分(一般是一个全局类的变量)。
4、答题顺序按照随机方式处理,从20道题随机抽取题目,直到答题数量达10个,给到用户最终总分结果。
5、答题时间有限。答完10道题结束时,计时停止,并给到用时,如一共39秒。
6、根据总分区间划分结果,如0~60分是结果1及格;70~80分是结果2良好;90~100分是结果3优秀。
7、更多常见规则
1)每个微信用户只能答题一次
2)在答题过程中需记录用户每道题的答题情况,如答题序号、题目、选择结果、选择正误,可以边答题边提交答题结果,也可以全部答完再提交;提交后记录总分及答题用时。
3)已经提交过的用户再次点开h5可以查看答题记录、分数及用时。
本次教程以8道题为总数,答题数量5道题为例,讲解随机答题的基本实现方式。
(二)需求分析延伸:
1、如果是每人答题1次,要考虑:
1)如果用户之前答过题,再次进入H5点击开始答题前,需要提示用户:您的答题次数已用完,请勿重复答题。
2)如果用户未答过题,答题结束点击提交按钮,提交答题结果到数据库。
理想状态是:用户点击开始答题时,我们在答题数据表里初始化1条数据,即新建1条数据,并获取到数据ID,等答完第10道题时,再去把当前用户的答题结果分数、用时等更新到后台数据表。
2、每个微信用户答题1次,就限制了该H5只能在微信环境下发布,包括电脑端微信和手机端微信。
如需用其他方式限制每人答题1次,如手机号、员工号等唯一性编码,且不局限于微信环境打开H5,可以联系意派平台沟通具体需求,获取相关解决方案,添加小派微信:epub360_pai
三、功能设置
1、先用页面铺设整体框架。随机测试题基本分为3部分:开始答题部分、测试题部分、结果部分。
1)开始答题部分相对简单,用于录入答题人的相关数据,如姓名、手机号或其他信息。
2)测试题部分。主要为多个单选题/多选题/判断题等类型的题目,可以是一个页面1个题目。
3)结果页部分。用于显示不同得分区间的结果。
2、梳理随机部分的逻辑。点击《随机测试题流程图》可查看在线版本流程图:
3、测试题部分制作。
如果是制作单选题,可以借助测试题组件和图片按钮组件/新文字按钮组件完成;
如果是制作多选题,可以借助参数变量+图片按钮/新文字按钮组件结合的方式。
本次不详细讲解每个题目的制作过程,主要讲解随机逻辑部分。测试题组件相关教程:
4、如果我们之前对Masterpage页(后简称M页)有了解,可知道M页面的元素在所有页面都可以显示,且M页的元素支持被选中进行触发设置。
4.1、一般测试题答题过程中会进行分数的累加,我们一般会用放在M页的参数变量进行分数累加。
在M页面放一个参数变量,命名为“总分”,类型为整数(也可以是小数),触发方式为等待触发,初始值为0。
4.2、总分=不同值或处于不同的分值区间时,可以跳转到不同的结果页。本次案例的结果页面编码是9~11,因此3个条件分别对应跳转到这3个页面。
5、因为是随机答题,且每个题目分布在不同的页面,需要一个参数变量可以全局分配参数,决定跳转到不同的题目页。需借助参数变量的随机数类型,进行题目的随机跳转。
参照下图切换到M页并添加参数变量,命名为“随机跳转参数”。设置参数类型为“随机数”,触发方式为等待触发;因为本次答题只有8道题,我们设置取值范围为1~8,即从8个数里进行随机。如果我们有20道题,取值范围就是1~20。更多道题目以此类推。
5.1、了解每道题目分布的页面编码。
5.2、通过跳转页面切换题目。恰好本次的页面编码范围是1~8,可以在跳转页面时,根据随机数的值跳转到对应页面:
* 当随机参数=1时,跳转页面到页1;
* 当随机参数=2时,跳转页面到页2;
* 当随机参数=3时,跳转页面到页3;
* 当随机参数=4时,跳转页面到页4;
...
* 当随机参数=8时,跳转页面到页8。
以上设置我们称触发条件,只有随机参数等于具体某个值时,这些条件才会对应执行,每次执行参数判断仅执行1个条件。
6、因为是在8道题里选择5道题进行答题,因此需统计答题个数。本次我们在每道题答题结束时对个数参数进行累加。
统计答题个数也是一个全局的概念,因此是在M页添加参数变量,命名为“答题”个数,类型为整数,触发方式为等待触发,初始值为0。
7、答题个数是否满5个,需要执行不同的判断。
7.1、不满5个就继续去答题,但是答哪道题呢?需要先让随机参数给到新的参数值,我们称参数变量——重置。
7.2、随机数重置完毕后,就需要根据随机数的值判断跳转到哪一题,即执行随机数的参数判断。
8、满5个就要根据总分给到不同结果,因此需要去执行总分参数变量的判断。
9、切换回页面,在每道题答题结束时,设置每道题的分数累加到总分,并且累加个数。
10、累加完分数和个数,要判断个数是否达到5个。
11、到目前为止,随机答题的整体逻辑设置完成。
补充说明:关于参数变量为何要设置为等待触发。我们需要统计个数、分数、随机数重置时的参数变量,按照指定的顺序和条件去执行参数判断,所以必须是等待触发。
希望以上内容可以对您有所启发
更多精彩的H5案例及模板
转载请在文章开头和结尾显眼处标注:作者、出处和链接。不按规范转载侵权必究。
未经授权严禁转载,授权事宜请联系作者本人,侵权必究。
本文禁止转载,侵权必究。
授权事宜请至数英微信公众号(ID: digitaling) 后台授权,侵权必究。
评论
评论
推荐评论
暂无评论哦,快来评论一下吧!
全部评论(0条)