如何打造測驗 App
測驗 App 會顯示題目、收集答案、計分,並呈現結果。簡單的版本(一份固定測驗,在瀏覽器中計分)半天就能完成。而人們會仰賴的版本(用於學習、招募或競賽)則需要題庫、把答案保存在伺服器上、儲存作答紀錄,以及公平的計時。請儘早決定你要打造的是哪一種,因為這會改變整體架構。
先決定測驗的類型
「測驗」一詞涵蓋了非常不同的產品:
| 類型 | 範例 | 最重要的是 |
|---|---|---|
| 趣味 / 行銷 | 「哪種方案適合你?」或人格測驗 | 外觀、分享、名單蒐集;計分很簡單 |
| 學習 / 練習 | 課堂或課程的複習測驗 | 解說、可重試、長期的學習進度 |
| 評量 | 員工訓練檢核、入學考試 | 答案保密、只能作答一次、計時、紀錄 |
| 即時 / 競賽 | 酒吧問答、課堂遊戲 | 即時計分板、所有人同時作答同一題 |
沒有利害關係的人格測驗,完全在瀏覽器中運作也很安全。評量則不行。即時測驗需要即時更新,這是另一個層級的複雜度,除非這正是重點,否則第一版就先不要做。
測驗 App 需要什麼
資料
- 測驗:標題、說明、設定(時間限制、可作答次數、是否打亂順序、及格分數、作答後是否顯示答案?)。
- 題目:所屬測驗、題目內容、類型、分數、選用的圖片,以及作答後顯示的解說。
- 選項:每題的答案選項,以及哪些是正確的。
- 作答紀錄:誰在何時開始與送出了哪份測驗,以及分數。
- 答案:作答紀錄中,每一題作答者所選的選項(或文字)。
將作答紀錄與答案分開儲存,讓你可以精確告訴人們答錯了什麼,也能找出幾乎所有人都答錯的題目,這通常代表題目寫得不好。
頁面
- 測驗編輯器,供出題者使用:新增題目、重新排序、標記正確選項、預覽。
- 測驗開始頁,列出規則:題數、時間限制、作答次數。
- 作答畫面,在手機上一次只顯示一題,並顯示進度(「第 4 題,共 10 題」)。
- 結果頁,顯示分數、及格或不及格,若設定允許,還會顯示每題的回饋。
- 出題者儀表板,顯示作答紀錄、平均分數與最常答錯的題目。
權限
出題者可以建立與編輯測驗;作答者只能作答。如果測驗是給班級或團隊使用的,可以加入群組,讓人們只看到指派給自己的測驗。請參閱如何為你的 App 加入登入功能。
需要寫下來的計分規則
多數測驗的錯誤都出在計分上。請把這些規則寫進你的提示詞:
- 單選:答對得滿分,答錯得零分。
- 多選(「選出所有正確答案」):決定採全對或全錯,還是部分給分。若採部分給分,選錯是否要扣分?請寫一個範例:「正確選項為 A 與 C。只選 A 得 1 分(共 2 分)。選 A、B、C 也得 1 分(共 2 分)。」
- 未作答的題目計為零分,並顯示為未作答,而不是答錯。
- 時間限制要在伺服器上依據開始時間強制執行。瀏覽器的計時器只是顯示用,任何人都可以暫停或竄改它。
- 打亂順序只改變顯示的順序,絕不改變哪個選項是正確的。請以選項的 ID 來儲存正確答案,而不是以位置來儲存。
把答案留在瀏覽器之外
這是每個正規測驗 App 都必須做對的關鍵技術重點。如果頁面接收到的題目附帶正確答案,並由頁面自行計分,任何人打開開發者工具就能讀到答案鑰匙。
解法的描述很簡單:伺服器只傳送不含正確標記的題目,作答者送出後,由伺服器為這份作答計分並回傳結果。請在提示詞中明確寫出這一點。對於趣味測驗來說這無關緊要;但只要測驗會發證書、影響成績或附有獎品,就非常重要。
一個有效的第一個提示詞
打造一個測驗網頁 App。出題者登入後,可以建立測驗,包含標題、說明、選用的時間限制、允許的作答次數,以及及格分數。每份測驗的題目類型為單選、多選或是非題,並有分數與選用的解說。作答者透過連結開啟測驗,先看到規則,然後每個畫面只顯示一題,並附上進度條。在送出之前,正確答案絕對不能傳送到瀏覽器;請在伺服器上為作答計分,並以伺服器端的開始時間強制執行時間限制。多選題採全對才給分。送出後,顯示分數與及格或不及格;若出題者允許,還要顯示每一題的正確答案與解說。把每次作答與每個答案都保存在資料庫中。提供出題者一個結果頁,顯示平均分數與最常答錯的題目。
逐步打造
- 先做編輯器。 建立一份包含十題、題型混合的測驗。如果出題很麻煩,出題者就不會用這個 App。
- 作答測驗。 在手機上試一次。檢查進度、上一題與下一題,以及重新整理頁面時會發生什麼事。
- 伺服器端計分。 在作答測驗時開啟瀏覽器的網路分頁,確認在送出之前,沒有任何回應包含正確答案。
- 計分測試。 給 AI 五個已算好預期分數的範例,包括部分正確的多選題與一題未作答的題目。
- 計時。 開始一份有時間限制的測驗,等超過時限後再送出。系統應該拒絕,或依照截止時的狀態計分,請先決定採用哪一種。
- 結果與分析。 用你刻意製造的作答來核對「最常答錯的題目」清單。
- 額外功能。 現在才加入圖片、隨機抽題的題庫、證書或排行榜。
常見錯誤
- 頁面中含有答案鑰匙。 這是最常見,也是最嚴重的缺陷。
- 相信瀏覽器的時鐘。 時間限制必須在伺服器上強制執行。
- 把正確答案儲存為「選項 2」。 打亂順序後,就會把錯的答案標記為正確。
- 在人們作答後還編輯測驗。 修改題目會改變舊成績的意義。請鎖定已有作答的測驗,或為它們建立版本。
- 評量允許無限次重試。 請決定作答次數的規則,並在伺服器上強制執行。
- 排行榜預設顯示全名。 讓人們可以選擇顯示名稱,尤其是學生。
何時現成產品是更好的選擇
如果你需要一個快速的課堂遊戲、一份內嵌在你已在使用的課程平台中的測驗,或是一次性的名單蒐集測驗,現成的測驗與表單工具會更快,而且通常免費。學習管理系統本身就內建測驗與成績簿。若想走表單路線,請參閱Typeform 替代方案與Google 表單替代方案。
當測驗是更大事物的一部分時,例如你販售的課程、招募流程,或是有你自己規則的訓練計畫,或是當你需要現成工具無法提供的計分、品牌或資料掌控權時,就應該自己打造。若要練習,可以搭配記憶卡 App,或把它放進線上課程平台之中。
用 Mythex 打造
在 Mythex 中,你用對話描述測驗 App,並在即時預覽中試用,包括手機尺寸的檢視。當你要求保存作答紀錄時,AI 代理會加入資料庫,並同時撰寫伺服器端的計分程式,與前端一起運作。若要出題者登入,Mythex 會接上你選擇的驗證方式,而不是內建的登入產品。如果某個修改破壞了計分,請回復到先前的檢查點,然後再試一次。發布後可以獲得 mythex.ai 連結,在 Pro 方案中則可以使用你自己的網域。
常見問題
如何避免別人在瀏覽器中看到測驗答案?
把正確答案保存在伺服器上。只把沒有答案的題目傳送到瀏覽器,讓作答者送出,再由伺服器為送出的作答評分。任何傳送到瀏覽器的內容,都可以用開發者工具讀取。
測驗 App 需要資料庫嗎?
只有一份固定測驗、且不保存分數的情況,可以完全在瀏覽器中運作。一旦你想保存成績、建立排行榜、使用多份測驗,或需要把答案保密,就需要資料庫與一個小型伺服器。
不寫程式也能打造測驗 App 嗎?
可以。AI App 建置工具可以根據你的描述,建立題目編輯器、作答畫面與計分功能。在分享之前,請先用幾個已算好結果的範例,自行檢查計分規則。
測驗 App 應該支援哪些題型?
單選、多選與是非題涵蓋了大多數測驗,而且容易自動計分。簡答題則需要比對規則或人工評分,可以之後再加。