Take screenshot in reports only for failed/pass testcase

Hi,

I am using AppiumStudio 11.7.103 and using Pageobject model in eclipse.I had set the desiredcapabilities as below:

dc.setCapability(MobileCapabilityType.APP, commonProperties.getProperty(“App_Path”));
dc.setCapability(“projectName”,commonProperties.getProperty(“Project_Name”));
dc.setCapability(“reportDirectory”, reportDirectory);
dc.setCapability(“reportFormat”, reportFormat);
dc.setCapability(“testName”, m.getName());
dc.setCapability(“autoAcceptAlerts”, false);
dc.setCapability(“attach.crash.logs.to.reports”, true);
dc.setCapability(“autoGrantPermissions”, true);
dc.setCapability(MobileCapabilityType.UDID, commonProperties.getProperty(“iOS_UDID”));
dc.setCapability(IOSMobileCapabilityType.BUNDLE_ID, commonProperties.getProperty(“iOS_Package_Name”));
dc.setCapability(MobileCapabilityType.NO_RESET, true);
dc.setCapability(MobileCapabilityType.PLATFORM_NAME, commonProperties.getProperty(“Platform_name”));
dc.setCapability(MobileCapabilityType.PLATFORM_VERSION, commonProperties.getProperty(“Platform_version”));
dc.setCapability(MobileCapabilityType.DEVICE_NAME, commonProperties.getProperty(“Device_name”));
dc.setCapability(MobileCapabilityType.AUTOMATION_NAME, commonProperties.getProperty(“Automation_name”));
driver = new IOSDriver(new URL(“http://localhost:”+commonProperties.getProperty(“Appium_host”)+"/wd/hub"), dc);
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);

I am get reports with all the postactions,actions,beforeactions,failed,pass testcase.I am having around 200 testcases. After completed execution my report folder size is around 900Mb which i cant share the report to my manager.Because of all the screenshots folder size is more.
How to get screenshot only for pass/failed testcase.
Please help me ASAp

Hi @harish8260

Please have a look in this post, where you can use SeeTestClient.

Hi @rahee

Thanks for the quick response.

I had modified my code as below:

 protected AndroidDriver<AndroidElement> driver = null;
 private SeeTestClient client;
 
 DesiredCapabilities dc = new DesiredCapabilities();
 
@BeforeMethod
public void InstallApp(Method m) throws ExecuteException, IOException, InterruptedException {
	
	dc.setCapability(MobileCapabilityType.APP, commonProperties.getProperty("App_Path"));
	dc.setCapability("projectName",commonProperties.getProperty("Project_Name"));
	dc.setCapability("reportDirectory", reportDirectory);
	dc.setCapability("reportFormat", reportFormat);
	dc.setCapability("testName", m.getName());
	dc.setCapability("autoAcceptAlerts", false);
	dc.setCapability("attach.crash.logs.to.reports", true);
	dc.setCapability("autoGrantPermissions", true);
	dc.setCapability(MobileCapabilityType.UDID, commonProperties.getProperty("Android_UDID"));
	dc.setCapability(AndroidMobileCapabilityType.APP_PACKAGE, commonProperties.getProperty("Android_Package_Name"));
	dc.setCapability(MobileCapabilityType.NO_RESET, true);
	dc.setCapability(MobileCapabilityType.FULL_RESET, false);
	dc.setCapability(MobileCapabilityType.PLATFORM_NAME, commonProperties.getProperty("Platform_name"));
	dc.setCapability(MobileCapabilityType.PLATFORM_VERSION, commonProperties.getProperty("Platform_version"));
	dc.setCapability(MobileCapabilityType.DEVICE_NAME, commonProperties.getProperty("Device_name")); 
	dc.setCapability(MobileCapabilityType.AUTOMATION_NAME, commonProperties.getProperty("Automation_name"));
	driver = new AndroidDriver<AndroidElement>(new URL("http://localhost:"+commonProperties.getProperty("Appium_host")+"/wd/hub"), dc);
	client = new SeeTestClient(driver);
	driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
}

But i am unbale to import the SeetestClient.It is throwing error.My POM.xml file is as below:

Untitled

Can someone help me about this??