takeScreenshot function 
 
    
        
Future<void>
takeScreenshot(
{ - dynamic withWidgetTreeRender = false, 
 
})
        
     
    
    
  Implementation
  Future<void> takeScreenshot({withWidgetTreeRender = false}) async {
  await currentWorld.tester.pumpAndSettle();
  RenderObject? renderObject = _getMainWidget()?.renderObject;
  if (renderObject != null) {
    RenderRepaintBoundary boundary = renderObject as RenderRepaintBoundary;
    ui.Image image = await boundary.toImage();
    ByteData? byteData = await image.toByteData(format: ui.ImageByteFormat.png);
    Uint8List pngBytes = byteData!.buffer.asUint8List();
    await currentWorld.screenshot?.writeAsBytes(pngBytes);
    if (withWidgetTreeRender) {
      await dumpWidgetRender();
    }
  } else {
    logger.e('Screenshot failed.');
  }
}