| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 |
- <!doctype html>
- <html lang="zh-CN">
- <head>
- <meta charset="UTF-8" />
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <title>Monitor SDK 测试页面</title>
- </head>
- <body>
- <h1>监控SDK测试页面</h1>
- <p>此页面用于测试打包后的监控SDK是否正常工作。</p>
- <!-- 引入打包后的测试函数 -->
- <script src="../dist/bundle-iife.js"></script>
- <div id="test-container">
- <button id="trigger-error">触发JavaScript错误</button>
- <button id="trigger-promise-error">触发Promise错误</button>
- <button id="simulate-performance-event">模拟性能事件</button>
- <button id="send-custom-data">发送自定义数据</button>
- <button id="test-functions">测试函数(test)</button>
- </div>
- <div id="result">
- <h3>控制台输出:</h3>
- <p>请打开开发者工具查看监控SDK的输出信息</p>
- </div>
- <script>
- // 页面加载完成后执行测试
- document.addEventListener("DOMContentLoaded", function () {
- console.log("页面已加载,监控SDK应该已经初始化");
- // 检查监控SDK是否已正确加载
- if (window.MonitorSDK && window.monitorInstance) {
- console.log("监控SDK已成功加载");
- console.log("SDK实例:", window.monitorInstance);
- } else {
- console.error("监控SDK未正确加载");
- }
- // 测试全局函数是否存在
- if (window.test && window.testExport) {
- console.log("✅ 全局函数已成功加载");
- // 测试函数功能
- console.log("test(5) =", window.test(5));
- console.log("testExport(5) =", window.testExport(5));
- } else {
- console.error("❌ 全局函数未找到");
- }
- // 绑定按钮事件
- document.getElementById("test-functions").addEventListener("click", function () {
- console.log("测试全局函数");
- if (window.test && window.testExport) {
- const result1 = window.test(10);
- const result2 = window.testExport(10);
- console.log("window.test(10) =", result1);
- console.log("window.testExport(10) =", result2);
- alert(`函数调用结果:\ntest(10) = ${result1}\ntestExport(10) = ${result2}`);
- } else {
- console.error("函数未定义");
- alert("函数未定义");
- }
- });
- document.getElementById("trigger-error").addEventListener("click", function () {
- console.log("触发JavaScript错误测试");
- // 触发一个JavaScript错误
- throw new Error("这是测试错误");
- });
- document.getElementById("trigger-promise-error").addEventListener("click", function () {
- console.log("触发Promise错误测试");
- // 触发一个Promise错误
- Promise.reject(new Error("这是测试Promise错误"));
- });
- document
- .getElementById("simulate-performance-event")
- .addEventListener("click", function () {
- console.log("模拟性能事件");
- // 这会触发性能监控
- const start = performance.now();
- // 模拟一些计算
- for (let i = 0; i < 1000000; i++) {}
- const end = performance.now();
- console.log(`模拟计算耗时: ${end - start} ms`);
- });
- document.getElementById("send-custom-data").addEventListener("click", function () {
- console.log("发送自定义数据");
- // 使用监控实例发送自定义数据
- if (window.monitorInstance) {
- window.monitorInstance.reportData({
- type: "custom_event",
- message: "自定义事件测试",
- timestamp: Date.now(),
- });
- }
- });
- });
- // 页面可见性变化事件(用于测试页面停留时间监控)
- document.addEventListener("visibilitychange", function () {
- console.log("页面可见性变化:", document.visibilityState);
- });
- </script>
- </body>
- </html>
|