SharePoint API测试系列——Records.BypassLocks测试

简介: 转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ 对于SharePoint中已经是Record的Item,我们想要修改他的属性,这在UI界面是无法完成的: 这时需要通过Records.BypassLocks API来完成。

转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/

对于SharePoint中已经是Record的Item,我们想要修改他的属性,这在UI界面是无法完成的:

这时需要通过Records.BypassLocks API来完成。设计一个tool,利用Records.BypassLocks API来修改Recorded Items的属性(这里拿Title举例),界面如下:

代码如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

using Microsoft.SharePoint;
using Microsoft.SharePoint.Utilities;
//Assembly:  Microsoft.Office.Policy (in Microsoft.Office.Policy.dll)
using Microsoft.Office.RecordsManagement.RecordsRepository;
using Microsoft.SharePoint.Publishing;

namespace BypassLocksTestTool
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void test_button_Click(object sender, EventArgs e)
        {
            try
            {
                SPSecurity.RunWithElevatedPrivileges(delegate ()
                {
                    SPSite site = new SPSite(siteURL_textBox.Text);
                    SPWeb web = site.RootWeb;
                    SPList list = web.Lists[listTitle_textBox.Text];
                    SPListItem item = list.Items[0];
                    Records.BypassLocks(item, delegate (SPListItem spListItem)
                    {
                        //Do your stuff here.
                        item["Title"] = itemTitle_textBox.Text;
                        item.Update();
                        if (list.Items[0].Title == itemTitle_textBox.Text)
                        {
                            testResult_richTextBox.Text = "Test result is passed! Now the first item's title is: " + list.Items[0].Title;
                            testResult_richTextBox.Select(0, testResult_richTextBox.Text.Length);
                            testResult_richTextBox.SelectionColor = Color.Green;
                        }
                        else
                        {
                            testResult_richTextBox.Text = "Test result is failed!";
                            testResult_richTextBox.Select(0, testResult_richTextBox.Text.Length);
                            testResult_richTextBox.SelectionColor = Color.Red;
                        }
                    });
                });
            }
            catch (Exception ex)
            {
                testResult_richTextBox.Text = ex.ToString();
            }
        }
    }
}

点击Test按钮进行测试,测试结果会回显到界面,如果Title的value完成了修改,则算测试通过;否则算测试失败。

测试通过后,我们去SharePoint中查看Item的属性,结果和我们预期的一样,对应Item的Title属性值已经变为“SuperTylan”:

这就是对于Records.BypassLocks API的使用与测试,它让我们修改locked recorded item的属性与内容成为可能。

相关文章
|
4天前
|
Java 测试技术 API
如何保证拼多多 API 接口测试的稳定性?
拼多多 API 接口申请通过后,需先仔细研读接口文档,了解功能、参数及错误码。接着搭建测试环境,选择合适的开发工具和模拟请求工具。随后,编写测试代码或使用测试工具发送请求,设计涵盖正常、异常及边界情况的测试用例,验证测试结果并记录分析,确保 API 稳定性和性能。
如何保证拼多多 API 接口测试的稳定性?
|
4天前
|
Java 测试技术 API
拼多多 API 接口申请通过后如何进行测试?
拼多多 API 接口申请通过后,需按以下步骤测试:1. 仔细研读接口文档;2. 搭建测试环境,准备开发工具和模拟请求工具;3. 编写测试代码或使用测试工具;4. 设计测试用例,包括正常、异常和边界情况;5. 验证测试结果,检查返回值和错误处理;6. 记录和分析测试结果,确保 API 的稳定性和性能。
|
8天前
|
测试技术 API 项目管理
API测试方法
【10月更文挑战第18天】API测试方法
21 1
|
21天前
|
安全 测试技术 API
一图看懂API测试9种方法
一图看懂API测试九种方法:冒烟测试验证基本功能,功能测试确保符合规格,集成测试检查组件协同工作,回归测试防止新变更引入问题,负载测试评估性能稳定性,压力测试挑战极限负载,安全测试发现并修复漏洞,用户界面测试确保UI与API协调,模糊测试提升异常数据处理鲁棒性。
|
3月前
|
监控 数据可视化 测试技术
Apifox 如何进行 API 自动化测试?经验之谈
选择 Apifox 来进行 API 自动化测试能够确保每次迭代的质量,避免引入新的 bug,还要实现自动化测试、定时测试、产品监控、可视化测试、持续集成等,帮助提高效率,通过设计和执行有针对性的测试用例,来全面验证产品功能,确保软件系统能够正常运行,减少上线后的问题。
Apifox 如何进行 API 自动化测试?经验之谈
|
3月前
|
安全 测试技术 API
API 测试是什么?如何进行 API 测试?
在互联网时代,API已成为软件间交互的关键。API测试验证API是否按预期工作,通过检查响应来确保其正确性、可靠性和安全性。与UI测试不同,API测试聚焦底层功能,有助于早期发现并修复缺陷。它能验证软件质量、加速开发周期、促进微服务架构并支持持续集成/交付。常见的测试类型包括单元测试、功能测试、集成测试、性能测试、安全测试及回归测试。使用自动化工具如Apifox能提高测试效率,支持可视化编排、零代码配置流程条件、生成详细测试报告及快速性能测试,从而确保API质量并提升用户体验。
API
10 1
|
3月前
|
JSON API 网络架构
SharePoint REST API 设置SummaryLength属性
【8月更文挑战第10天】在SharePoint中,可通过REST API设定`SummaryLength`属性来控制列表或库内项目摘要的显示长度。首先确定目标URL,接着构建POST请求并指定JSON格式的新摘要长度值,例如设置为100字符。利用Postman等工具发送请求,并确保提供认证信息。成功后,摘要长度将按设定更新,注意操作权限及对用户体验的影响。
|
3月前
|
测试技术 API
使用wrk对api接口进行性能测试
使用wrk对api接口进行性能测试
|
3月前
|
机器学习/深度学习 安全 测试技术
API 接口测试的发展前景展望
在数字化时代,API已成为软件系统集成的核心。随着微服务架构普及与分布式系统增多,API数量激增,对接口测试需求大幅提升。智能化测试借助AI技术提高效率与质量,并降低成本。新技术如容器化和服务化架构催生新型API,推动测试方法不断创新。行业数字化转型与云服务发展进一步强调API测试重要性,开放API生态建设亦依赖严格测试确保安全与正确性。面对网络安全威胁,API安全测试愈发关键。尽管多协议并存和技术挑战带来复杂性,高端测试人才短缺,但API测试前景广阔,将持续发挥关键作用并适应新需求。