在处理更多页面之前,验证具有代表性的转换波中的每一页。 成功的命令或 HTTP 200 响应不会证明生成的页面保留了预期内容。
记录预期结果
在转换之前,请记录:
- 源和预期目标 URL。
- 页面类型和布局。
- 可见的文本和标题。
- Web 部件及其重要配置。
- 链接、图像、文件、列表和嵌入内容。
- 元数据、权限、发布状态以及页面是否为主页。
保留具有此基线的评估行和 classicpagewebparts.csv 行。
对于委托 AllSites.Manage 的第一波路径,请选择从其库中继承权限的页面,并将生成的页面保留为草稿。 如果必须保留唯一的源权限,请使用审阅 AllSites.FullControl 的路径,而不是跳过权限复制。
查看转换结果
对于每个页面:
- 查看 PnP 转换日志中的错误、跳过的 Web 部件、回退映射和权限复制消息。
- 确认经典源页仍然存在,并保留其预期名称。
- 确认预期的新式页面存在并打开。
- 比较可见文本、Web 部件、节、列和排序。
- 测试链接、图像、文档、列表视图和其他依赖项。
- 比较所需的元数据、作者和修改的值、权限、注释和发布状态。
- 在处理下一页之前记录结果和证据。
检测不完整的输出
在以下情况下,将页面视为失败:
- 目标页面为空白或仅包含标题。
- 缺少预期的文本或所需的 Web 部件。
- 存在 Web 部件,但指向错误的列表、文件、站点、用户或术语。
- 布局或页眉阻止页面满足其业务目的。
- 未保留所需的元数据或权限。
- 转换日志包含未解决的错误。
手动检查评估报告 WebPartCount=0的页面,即使为 MappingPercentage=100。 此外,验证报告为完全映射的页面,因为运行时数据或映射函数仍可能导致转换失败。
记录波形结果
每个尝试的页面使用一条记录:
| 字段 | 用途 |
|---|---|
ScanId |
将页面链接到评估证据。 |
SiteUrl, WebUrl, PageUrl |
标识源页。 |
PlannedTargetPageUrl, TargetPageUrl |
标识审阅的计划并创建的目标。 |
PageType, Layout |
对可比较结果进行分组。 |
MappingPercentage, UnmappedWebParts |
保留规划信号。 |
TransformationStatus |
Skipped、 PreflightPassed、 Created或 Failed。 |
LogPath |
指向页面的确切 PnP 转换日志。 |
ValidationStatus |
Pending、 Passed或 Failed。 |
ValidationNotes |
记录缺少的内容、映射问题和后续工作。 |
ValidatedBy, ValidatedAt |
记录审批所有权。 |
决定是否展开
仅在以下情况下展开波形:
- 每个具有代表性的源页仍然可用。
- 每个已批准的目标页面都通过内容和行为验证。
- 草稿目标仅在审批后发布。
- 常见阻塞程序具有记录的修正或映射。
- 失败或部分页面将从下一波中排除。
- 下一波包含所有者、回滚计划和保留日志。
如果页面失败,请停止处理可比较的页面。 查看日志和源 Web 部件,在适当时更新映射或候选规则,并在恢复之前重试单个代表性页面。
草稿页获得批准后,请通过页面编辑体验或使用当前的 Set-PnPPage-Publish 选项发布它。
展开波形
验证每个代表性页面后:
- 将每个代表性结果设置为
ValidationStatus=Passed。 - 填充
ValidationNotes、ValidatedBy和 ISO-8601ValidatedAt时间戳。 - 从用户批准的其他分组行创建
approved-pages.csv。 - 使用原始代表性清单和已验证结果运行
Convert-SelectedPages.ps1 -PreflightOnly。 - 仅在每次预检行通过后运行实时扩展。
- 在发布扩展波中验证每个生成的页面。
如果缺少代表性结果、过时、未传递或基于其他 PnP PowerShell 或脚本配置文件,则脚本将阻止扩展。
后续步骤
- 将失败的页返回到修正积压工作。
- 将传递的页面模式添加到
approved-pages.csv并运行扩展脚本。