/// <summary> /// Initializes a new instance of the <see cref="ManagementModule"/>. /// </summary> /// <param name="config">The config to use.</param> /// <param name="screenshotManager">The screenshot manager to use.</param> /// <param name="screenshotProvider">The screenshot provider to use.</param> public ManagementModule( Configuration.Configuration config, ScreenshotManager screenshotManager, ScreenshotProvider screenshotProvider ) { _config = config; _screenshotManager = screenshotManager; _screenshotProvider = screenshotProvider; }
private void SnippetDialog_MouseUp(object sender, MouseEventArgs e) { _drawing = false; Hide(); //ensures border is not captured _selectedArea.Inflate(-1, -1); SnippedImage = ScreenshotProvider.TakeScreenshot(_selectedArea); DialogResult = DialogResult.OK; }
private void CaptureActiveWindow() { IntPtr winHandle = NativeMethods.GetForegroundWindow(); NativeRectangle winRectangle; NativeMethods.GetWindowRect(winHandle, out winRectangle); Rectangle area = winRectangle.ToRectangle(); Bitmap screenshot = ScreenshotProvider.TakeScreenshot(area); ProcessScreenshot(screenshot); }
private void SnippetForm_Load(object sender, EventArgs e) { Location = new Point(SystemInformation.VirtualScreen.Left, 0); Size = new Size(SystemInformation.VirtualScreen.Width, SystemInformation.VirtualScreen.Height); TopMost = true; Cursor = Cursors.Cross; var screenshot = ScreenshotProvider.TakeScreenshotAllScreens(); BackgroundImage = screenshot; }
public void TearDown() { if (TestContext.CurrentContext.Result.Outcome != ResultState.Success) { foreach (var failedScreen in Directory.GetFiles(FileProvider.GetFailedScreensDirectory())) { AllureLifecycle.Instance.AddAttachment(failedScreen); } AllureLifecycle.Instance.AddAttachment("Screenshot", "image/png", ScreenshotProvider.PublishScreenshot($"Screenshot_{DateTime.Now.ToFileTime()}")); } Browser.GetInstance().Quit(); }
private void CaptureArea() { var screenshot = ScreenshotProvider.TakeScreenshot(SystemInformation.VirtualScreen); var dialog = new SelectAreaDialog(screenshot); if (dialog.ShowDialog() == DialogResult.OK) { Bitmap croppedScreenshot = screenshot.Clone( dialog.SelectedArea, screenshot.PixelFormat); ProcessScreenshot(croppedScreenshot); } dialog.Dispose(); }
public void Step(string name, Action action) { var caseId = TestExecutionContext.CurrentContext.CurrentTest.Id; var uuid = Guid.NewGuid().ToString("N"); Allure.StartStep(caseId, uuid, new StepResult() { name = name }); int logLength = TestExecutionContext.CurrentContext.CurrentResult.Output.Length; Exception stepException = null; try { action(); } catch (Exception e) { stepException = e; AllureHelper.AttachPng("FailedElement", File.ReadAllBytes(new DirectoryInfo(FileProvider.GetFailedScreensDirectory()) .GetFiles().OrderByDescending(file => file.LastWriteTime).First().FullName)); AllureHelper.AttachPng("Screenshot", File.ReadAllBytes(ScreenshotProvider.PublishScreenshot($"Screenshot_{DateTime.Now.ToFileTime()}"))); throw; } finally { Allure.UpdateStep(uuid, x => { x.status = GetStatusFromException(stepException); x.statusDetails = new StatusDetails { message = stepException?.Message, trace = stepException?.StackTrace }; x.attachments.AddRange(AllureHelper.GetAttaches()); }); Allure.StopStep(uuid); } }
public void TakesAScreenshotForAWebPageNonMatch() { var url = Directory.GetCurrentDirectory() + "/WebPages/DemoPage2.html"; var filePath = "pic.png"; if (File.Exists(filePath)) { File.Delete(filePath); } using (var driver = new ChromeDriver(@"Drivers/")) { var sut = new ScreenshotProvider(driver); sut.SaveScreenshot(url, filePath); } var bitmapComparer = new BitmapComparer(); var result = bitmapComparer.AreSame(@"pic.png", @"OldImages/pic.png"); Assert.IsFalse(result); }
public void RunTests() { var screenshots = new[] { new ScreenshotDefinition( @"http://www.thelondonclinic.co.uk/patient-care/your-stay-at-the-london-clinic", "Your_Stay.png"), new ScreenshotDefinition(@"http://www.thelondonclinic.co.uk/eye-centre", "Eye_Centre.png") }; var oldFilePath = new FilePathProvider("Original"); var newFilePath = new FilePathProvider("New"); var screenshotProvider = new ScreenshotProvider(new ChromeDriver(@"Drivers/")); var runner = new ScreenshotRunner(screenshotProvider, oldFilePath); runner.CreateScreenshots(screenshots); var screenshotEngine = new ScreenshotTestEngine(oldFilePath, newFilePath, screenshotProvider); var testRunner = new ScreenshotTestRunner(screenshotEngine, screenshots); var results = testRunner.Run(); }
public void Capture_on_Mac() { if (RuntimeInformation.IsOSPlatform(OSPlatform.OSX) is false) { return; } var screenshotspath = "screenshots"; if (Directory.Exists(screenshotspath)) { Directory.Delete(screenshotspath, true); } var sut = new ScreenshotProvider(screenshotspath); sut.Capture(); Assert.Single(Directory.GetFiles(screenshotspath, "*.jpg")); Thread.Sleep(1500); sut.Capture(); Assert.Equal(2, Directory.GetFiles(screenshotspath, "*.jpg").Length); }
private void CaptureFullScreen() { Bitmap screenshot = ScreenshotProvider.TakeScreenshotOneScreen(Screen.PrimaryScreen); DoAfterCaptureStuff(screenshot); }
private string MakeScreenshot() { return(ScreenshotProvider.PublishScreenshot($"Screenshot_{DateTime.Now.ToFileTime()}")); }
private void CaptureFullscreen() { Bitmap screenshot = ScreenshotProvider.TakeScreenshot(SystemInformation.VirtualScreen); ProcessScreenshot(screenshot); }
public ScreenshotHooks(ScenarioContext scenarioContext, ScreenshotProvider screenshotProvider) { this.scenarioContext = scenarioContext; this.screenshotProvider = screenshotProvider; }
public void OnPointerClick(PointerEventData eventData) { ScreenshotProvider.CaptureScreenshot(); StartCoroutine(HideUI(0.5f)); }