테스트 환경이 Windows 시스템에서 실행되고있는 것처럼 들리면 pInvoke를 사용하여 캐시를 조작 할 수 있습니다. 다음 네 가지 방법이 필요합니다. 불행히도이 코드는 내가 속한 회사가 소유하고 있기 때문에 여기에 붙여 넣을 수는 없습니다. 여기에는 "FindFirstUrlCacheEntry"및 "FindNextUrlCacheEntry"를 사용하여 캐시의 항목을 반복하는 작업이 포함됩니다. 캐시 항목이 쿠키인지 확인하고 관심있는 도메인에 속한 경우 캐시 항목을 삭제할 수 있는지 확인하십시오.
[DllImport (@"wininet", SetLastError = true, CharSet = CharSet.Auto)]
private static extern IntPtr FindFirstUrlCacheEntry ([MarshalAs (UnmanagedType.LPTStr)] string searchPattern, IntPtr ptrCacheEntryInfo, ref int cacheEntryInfoSize);
[DllImport (@"wininet", SetLastError = true, CharSet = CharSet.Auto, CallingConvention = CallingConvention.StdCall)]
private static extern bool FindNextUrlCacheEntry (IntPtr ptrCacheHandler, IntPtr ptrCacheEntryInfo, ref int cacheEntryInfoSize);
[DllImport (@"wininet", SetLastError = true, CallingConvention = CallingConvention.StdCall)]
private static extern bool FindCloseUrlCache (IntPtr ptrCacheEntryInfo);
[DllImport ("wininet.dll", SetLastError = true, CharSet = CharSet.Auto, CallingConvention = CallingConvention.StdCall)]
private static extern bool DeleteUrlCacheEntry (IntPtr lpszUrlName);
대부분의 웹 자동화 도구 (예 : Selenium)는 이와 같은 수정 작업을 지원합니다. 무엇을 도구로 사용하고 있습니까? (아니, 당신은 직접적인 보안 위반이 될 수 있으므로 웹 사이트를 통해 직접 할 수는 없습니다.) –
.NET 4에서 자동화 도구를 쓰고 있습니다. 이미 존재하는 도구를 사용하고 있지 않습니다. –
그냥 셀렌을 사용하지 않는 이유는 무엇입니까? –