delta-sync
Version:
A lightweight framework for bi-directional database synchronization with automatic version tracking and conflict resolution.
93 lines (92 loc) • 2.48 kB
TypeScript
import { DatabaseAdapter, BaseModel } from '../core/types';
export interface TestModel extends BaseModel {
value: string;
testField?: any;
}
export interface PerformanceTestOptions {
testStoreName?: string;
itemCount?: number;
iterations?: number;
fileSize?: number;
concurrentOperations?: number;
verbose?: boolean;
cleanupAfterTest?: boolean;
}
export declare class AdapterPerformanceTester {
private adapter;
private options;
private testStoreName;
private createdFileIds;
private createdItemIds;
constructor(adapter: DatabaseAdapter, options?: PerformanceTestOptions);
/**
* 运行所有性能测试
*/
runAllTests(): Promise<{
success: boolean;
results: Record<string, PerformanceResult>;
}>;
/**
* 测试单项写入性能
*/
testSingleItemWrite(): Promise<PerformanceResult>;
/**
* 测试单项读取性能
*/
testSingleItemRead(): Promise<PerformanceResult>;
/**
* 测试单项删除性能
*/
testSingleItemDelete(): Promise<PerformanceResult>;
/**
* 测试批量写入性能
*/
testBulkWrite(): Promise<PerformanceResult>;
/**
* 测试批量读取性能
*/
testBulkRead(): Promise<PerformanceResult>;
/**
* 测试批量删除性能
*/
testBulkDelete(): Promise<PerformanceResult>;
/**
* 测试批量文件写入性能
*/
testBulkFileWrite(): Promise<PerformanceResult>;
/**
* 测试批量文件读取性能
*/
testBulkFileRead(): Promise<PerformanceResult>;
/**
* 测试批量文件删除性能
*/
testBulkFileDelete(): Promise<PerformanceResult>;
/**
* 测试分页性能
*/
testPagination(): Promise<PerformanceResult>;
/**
* 测试压力处理与并发操作
*/
/**
* 测试压力处理与并发操作
*/
testStress(): Promise<PerformanceResult>;
/**
* 清理测试数据
*/
cleanupTestData(): Promise<void>;
/**
* 根据原始计时数据计算性能指标
*/
private calculatePerformanceResult;
}
export interface PerformanceResult {
averageTimeMs: number;
minTimeMs: number;
maxTimeMs: number;
operationsPerSecond: number;
throughputMBps?: number;
}
export declare function testAdapterPerformance(adapter: DatabaseAdapter, options?: PerformanceTestOptions): Promise<Record<string, PerformanceResult>>;