Skip to content

guiguihui/point-game

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

point-game

一个用 HTML5 Canvas + 原生 JavaScript 写的网页小游戏 Demo,附带一套 可让 AI 自动运行与自动测试的工具链(Playwright 无头浏览器)。

当前 src/game.js 是一个占位 demo(方向键移动方块),用于验证自测回路; 之后会整体替换为真正的游戏,架构保持不变。

在线试玩

部署到 GitHub Pages 后:https://<用户名>.github.io/point-game/

本地运行

直接双击 index.html 即可在浏览器中游玩,或启动一个本地静态服务器:

npm run serve      # 然后打开 http://localhost:5173

自动化自测

npm install
npx playwright install chromium
npm test           # 无头跑通:模拟输入 -> 断言状态 -> 截图

测试通过后会在 screenshots/ 下生成画面截图,用于视觉验证。

这套架构为什么适合 AI 自测

  • 确定性内核:种子化随机数 + 固定时间步长,相同 (种子, 输入序列) 必得相同状态,断言可用精确相等。
  • 逻辑与渲染分离step() 只改状态,render() 只画图,测试可瞬间推进上千帧而无需等待。
  • 测试契约 window.__gamereset / step / setInput / press / getState,Playwright 通过它驱动游戏并读回 JSON 状态,截图覆盖视觉部分。

目录结构

index.html          游戏页面外壳
src/game.js         游戏逻辑 + 渲染 + window.__game 测试契约
tests/selftest.mjs  Playwright 无头自测
tools/serve.mjs     本地静态服务器

About

HTML5 canvas game demo with an AI self-test harness (Playwright).

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors