测试好友
本主题介绍测试和方案,以验证 Outlook Social Connector (OSC) 提供程序是否根据提供程序支持的同步模式适当返回好友和非好友的数据(如果适用)。
缓存同步
OSC 提供程序实现 ISocialProvider::GetCapabilities,OSC 调用该提供程序以确定提供程序是否支持好友数据的缓存同步。 调用 ISocialPerson::GetFriendsAndColleagues 后,OSC 会将返回的朋友的数据存储在登录用户的默认 Outlook 存储中特定于社交网络的联系人文件夹中。 OSC 还调用 ISocialSession::GetPerson 和 ISocialPerson::GetPicture 来获取每个好友的个人资料图片。
启动同步
若要启动同步,可以在 Microsoft Office Fluent 用户界面的功能区组件中打开并使用调试按钮 “同步联系人 ”。 有关 OSC 调试按钮的详细信息,请参阅 调试提供程序。
测试方案
测试以下项,验证好友的数据是否已正确缓存。
要测试的项目 | 意外行为 |
---|---|
“联系人”文件夹 |
社交网络特定的联系人文件夹存在于用户的默认 Outlook 存储中。 |
ISocialPerson::GetFriendsAndColleagues 返回的好友数据 |
每个好友对应于特定于网络的联系人文件夹中的联系人。 |
好友的数据 |
每个朋友的联系人字段都有正确的数据。 |
ISocialPerson::GetPicture 返回的好友个人资料图片 |
每个朋友的联系人项目包含个人资料图片。 |
按需同步
OSC 提供程序实现 ISocialProvider::GetCapabilities,OSC 调用该提供程序以确定提供程序是否支持好友和非好友的按需同步。 对于 Outlook 人员 窗格中显示的人员,OSC 获取并哈希处理其 SMTP 地址,调用 ISocialSession2::GetPeopleDetails,并将 (存储在内存中,) 为这些人返回的数据。
确定好友和非好友
传递给 GetPeopleDetails 的哈希 SMTP 地址是确定某人是好友还是非好友的关键。 如果某人在其社交网络帐户中未包含该 SMTP 地址,或者即使该用户是社交网络上其他电子邮件地址的朋友,GetPeopleDetails 仍会返回该用户的非朋友,作为 personCollection 参数中的 friendStatus。 此外,对于不是好友但在其社交网络帐户中指定 SMTP 地址的人员,返回的数据仅包括该用户的隐私设置允许的非好友可用的数据。
为好友和非好友创建测试主题
若要为好友创建测试主题,请确定在其社交网络帐户中包含该地址的人员的 SMTP 地址,以及该网络上的已登录用户具有好友状态的人员。 创建包含该 SMTP 地址的电子邮件。 同样,若要为非好友创建测试主题,请通过该地址标识不是登录用户好友的人员的 SMTP 地址,并在其隐私设置中指定了允许非好友在社交网络上查看其活动的人员。 创建包含该 SMTP 地址的电子邮件。
在 Outlook 资源管理器中,选择包含好友 (或非好友) 的电子邮件时,人员窗格将显示收件人。 在“人员”窗格中选择好友 (或非好友) 可以测试提供程序是否提供了有关该人员的信息。
测试方案
若要验证提供程序是否适当地提供有关好友和非好友的信息,请测试以下方案。
应用场景 | 意外行为 |
---|---|
在人员窗格中选择的人员是社交网络上已登录用户的朋友。 | “人员窗格”显示该人员在社交网络上的活动。 |
在人员窗格中选择的人员是社交网络上登录用户的非好友,但允许非好友查看其活动。 | “人员窗格”显示该人员在社交网络上的活动。 |
混合同步
如果 OSC 提供程序支持好友和非好友的混合同步,则 OSC 将执行以下操作:
OSC 将登录用户的好友信息存储在社交网络特定的联系人文件夹中。
OSC 从社交网络中检索非好友按需信息,并仅将其存储在内存中,而不存储在文件夹中。
若要测试混合同步,请遵循好友的 缓存同步 部分中的测试建议,以及针对非好友的 按需同步 部分中的测试建议。