A listener for RF >= 4.0 that prints a Stack Trace to console to faster find the code section where the failure appears.

Overview

robotframework-stacktrace

A listener for RF >= 4.0 that prints a Stack Trace to console to faster find the code section where the failure appears.

Installation

pip install robotframework-stacktrace

Usage

robot --listener RobotStackTracer <your file.robot>

Example

Old Console Output:

> ../.. >> select" selector resolved to visible

New Stack Trace Output

> ../.. >> select (str) | ${basemodel} = aMinigolf (str) ______________________________________________________________________________ Configure Car with Pass | FAIL | TimeoutError: page.selectOption: Timeout 3000ms exceeded. =========================== logs =========================== waiting for selector ""Basismodell" >> ../.. >> select" selector resolved to visible
You might also like...
Cloudshell-sandbox-reporter - Helper modules and classes for writing to Cloudshell sandbox console
Cloudshell-sandbox-reporter - Helper modules and classes for writing to Cloudshell sandbox console

Cloudshell Sandbox Reporter This project provides utility classes for formatting

💻  A fully functional local AWS cloud stack. Develop and test your cloud & Serverless apps offline!
💻 A fully functional local AWS cloud stack. Develop and test your cloud & Serverless apps offline!

LocalStack - A fully functional local AWS cloud stack LocalStack provides an easy-to-use test/mocking framework for developing Cloud applications. Cur

A Serverless Application Model stack that persists the $XRP price to the XRPL every minute as a TrustLine. There are no servers, it is effectively a "smart contract" in Python for the XRPL.

xrpl-price-persist-oracle-sam This is a XRPL Oracle that publishes external data into the XRPL. This Oracle was inspired by XRPL-Labs/XRPL-Persist-Pri

Simulation artifacts, core components and configuration files to integrate AWS DeepRacer device with ROS Navigation stack.
Simulation artifacts, core components and configuration files to integrate AWS DeepRacer device with ROS Navigation stack.

AWS DeepRacer Overview The AWS DeepRacer Evo vehicle is a 1/18th scale Wi-Fi enabled 4-wheel ackermann steering platform that features two RGB cameras

CloudFormation template and CDK stack that contains a CustomResource with Lambda function to allow the setting of the targetAccountIds attribute of the EC2 Image Builder AMI distribution settings which is not currently supported (as of October 2021) in CloudFormation or CDK.
Stack overflow search API

Stack overflow search API

A multi-tenant multi-client scalable product categorising demo stack
A multi-tenant multi-client scalable product categorising demo stack

Better Categories 4All: A multi-tenant multi-client product categorising stack The steps to reproduce training and inference are in the end of this fi

A part of HyRiver software stack for accessing hydrology data through web services
A part of HyRiver software stack for accessing hydrology data through web services

Package Description Status PyNHD Navigate and subset NHDPlus (MR and HR) using web services Py3DEP Access topographic data through National Map's 3DEP

Please Do Not Throw Sausage Pizza Away - Side Scrolling Up The OSI Stack

Please Do Not Throw Sausage Pizza Away - Side Scrolling Up The OSI Stack

Comments
  • Should not do mutating variable resolution

    Should not do mutating variable resolution

    Using parameter --listener RobotStackTracer in regular robot run results in different test result (pass vs fail):

    running robot Test.robot grafik

    running robot --listener RobotStackTracer Test.robot grafik

    This --listener RobotStackTracer is now used in latest pabot version and i wonder, why my tests fail with pabot but pass in robot.

    Versions: Windows 10 python 3.9.6 robotframework-pabot 2.0.0 robotframework 4.0.3

    bug 
    opened by DirkRichter 8
  • Topic side effecting

    Topic side effecting

    Resolve variable values only when failing. Specifically DO NOT resolve then during execution as this can cause failures if the variable value resolving has side-effects.

    opened by mkorpela 0
  • The test suite is failing

    The test suite is failing

    Hi,

    Perhaps I'm doing something wrong, but here's what I get when running python -m robot tests on the latest 0.4.1 release (archive from PyPI):

    starting phase `check'
    ==============================================================================
    Tests                                                                         
    ==============================================================================
    Tests.A-Suite                                                                 
    ==============================================================================
    Tests.A-Suite.B-Suite                                                         
    ==============================================================================
    Tests.A-Suite.B-Suite.C-Suite                                                 
    ==============================================================================
    Tests.A-Suite.B-Suite.C-Suite.D-Suite                                         
    ==============================================================================
    first teardown fail                                                   | FAIL |
    Teardown failed:
    by purpose
    ------------------------------------------------------------------------------
    Second setup fails                                                    | FAIL |
    Setup failed:
    'False' should be true.
    
    Also teardown failed:
    this fails as well
    ------------------------------------------------------------------------------
    Tests.A-Suite.B-Suite.C-Suite.D-Suite                                 | FAIL |
    Suite teardown failed:
    'False' should be true.
    
    2 tests, 0 passed, 2 failed
    ==============================================================================
    Tests.A-Suite.B-Suite.C-Suite                                         | FAIL |
    2 tests, 0 passed, 2 failed
    ==============================================================================
    Tests.A-Suite.B-Suite.C2-Suite                                                
    ==============================================================================
    Tests.A-Suite.B-Suite.C2-Suite.Never Runs                                     
    ==============================================================================
    Hi                                                                    | FAIL |
    Parent suite setup failed:
    This is a Suite Setup
    ------------------------------------------------------------------------------
    Tests.A-Suite.B-Suite.C2-Suite.Never Runs                             | FAIL |
    Parent suite setup failed:
    This is a Suite Setup
    
    1 test, 0 passed, 1 failed
    ==============================================================================
    Tests.A-Suite.B-Suite.C2-Suite                                        | FAIL |
    Suite setup failed:
    This is a Suite Setup
    
    Also suite teardown failed:
    Here the teardow
    
    1 test, 0 passed, 1 failed
    ==============================================================================
    Tests.A-Suite.B-Suite.C3-Suite                                                
    ==============================================================================
    Tests.A-Suite.B-Suite.C3-Suite.Fails Suite Teardown                           
    ==============================================================================
    Test                                                                  | PASS |
    ------------------------------------------------------------------------------
    Tests.A-Suite.B-Suite.C3-Suite.Fails Suite Teardown                   | FAIL |
    Suite teardown failed:
    in Suite Teardown
    
    1 test, 0 passed, 1 failed
    ==============================================================================
    Tests.A-Suite.B-Suite.C3-Suite                                        | FAIL |
    1 test, 0 passed, 1 failed
    ==============================================================================
    Tests.A-Suite.B-Suite                                                 | FAIL |
    Suite teardown failed:
    This Fails as well....
    
    4 tests, 0 passed, 4 failed
    ==============================================================================
    Tests.A-Suite                                                         | FAIL |
    4 tests, 0 passed, 4 failed
    ==============================================================================
    [ ERROR ] Error in file '/tmp/guix-build-python-robotframework-stacktrace-0.4.1.drv-0/robotframework-stacktrace-0.4.1/tests/basics.robot' on line 4: Resource file 'keywords.resource' does not exist.
    Tests.Basics                                                                  
    ==============================================================================
    PASS Testing 1                                                        | PASS |
    ------------------------------------------------------------------------------
    Testing 1                                                             | FAIL |
    1 != 2
    ------------------------------------------------------------------------------
    Testing 2                                                             | FAIL |
    No keyword with name 'Keyword2' found. Did you mean:
        Keyword
        BuiltIn.Run Keyword
    ------------------------------------------------------------------------------
    Resolve Variable                                                      | FAIL |
    scalar content
    ------------------------------------------------------------------------------
    Fail with a List                                                      | FAIL |
    Lists are different:
    Index 2: three != 3
    ------------------------------------------------------------------------------
    Fail with dict                                                        | FAIL |
    Dictionary does not contain key 'key'.
    ------------------------------------------------------------------------------
    Fail expanded keys                                                    | FAIL |
    Keyword 'Fail Expanded' got unexpected named arguments 'key1' and 'key2'.
    ------------------------------------------------------------------------------
    Fail expanded items                                                   | FAIL |
    ['key1', 'key2']
    ------------------------------------------------------------------------------
    Fail expanded list                                                    | FAIL |
    ['one', 'two', 'three']
    ------------------------------------------------------------------------------
    Fail with large file                                                  | FAIL |
    This file is full of vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit
     vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit
      vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit v...
        [ Message content over the limit has been removed. ]
    ...mit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit
                     vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit vomit
    
    
    
    
    
    
    
    
    
     != puke
    ------------------------------------------------------------------------------
    Fail with number                                                      | FAIL |
    1775675 != 23
    ------------------------------------------------------------------------------
    Fails with Unknown Variable                                           | FAIL |
    Variable '${unknown_var}' not found.
    ------------------------------------------------------------------------------
    Fail a compount                                                       | FAIL |
    this is a scalar content text with a ['one', 'two', 'three']
    ------------------------------------------------------------------------------
    Wrong If                                                              | FAIL |
    Evaluating expression 'time.seven' failed: AttributeError: module 'time' has no attribute 'seven'
    ------------------------------------------------------------------------------
    Tests.Basics                                                          | FAIL |
    14 tests, 1 passed, 13 failed
    ==============================================================================
    Tests.RunKeywords and WUKS                                                    
    ==============================================================================
    Tests.RunKeywords and WUKS.Run Keywords WUKS                                  
    ==============================================================================
    Run Keyword                                                           | FAIL |
    This one fails
    ------------------------------------------------------------------------------
    Run Keyword And Ignore Error                                          | PASS |
    ------------------------------------------------------------------------------
    Run Keyword And Continue On Failure                                   | FAIL |
    Several failures occurred:
    
    1) 1st Error
    
    2) 2nd Error
    
    3) 3rd Error
    
    4) 4th Error
    
    5) 5th Error
    ------------------------------------------------------------------------------
    Run Keyword And Expect Error                                          | PASS |
    ------------------------------------------------------------------------------
    Run Keyword And Return                                                | FAIL |
    Evaluating expression '" ".join(None)' failed: TypeError: can only join an iterable
    ------------------------------------------------------------------------------
    Run Keyword And Return If                                             | FAIL |
    Evaluating expression '" ".join(None)' failed: TypeError: can only join an iterable
    ------------------------------------------------------------------------------
    Run Keyword And Return Status                                         | FAIL |
    'False' should be true.
    ------------------------------------------------------------------------------
    Run Keyword And Warn On Failure                                       [ WARN ] Executing keyword 'Top Level One' failed:
    This should basically be a warning
    | PASS |
    ------------------------------------------------------------------------------
    Run Keywords                                                          | FAIL |
    with a message
    ------------------------------------------------------------------------------
    Pass WUKS                                                             | PASS |
    ------------------------------------------------------------------------------
    Fail in WUKS                                                          | FAIL |
    Keyword 'Fails some times' failed after retrying 9 times. The last error was: 10 != 9
    ------------------------------------------------------------------------------
    Tests.RunKeywords and WUKS.Run Keywords WUKS                          | FAIL |
    11 tests, 4 passed, 7 failed
    ==============================================================================
    Tests.RunKeywords and WUKS                                            | FAIL |
    11 tests, 4 passed, 7 failed
    ==============================================================================
    Tests.Side-Effecting                                                          
    ==============================================================================
    Side effect in variable resolving                                     | PASS |
    ------------------------------------------------------------------------------
    Side effect in variable resolving FAILING                             | FAIL |
    a
    ------------------------------------------------------------------------------
    Tests.Side-Effecting                                                  | FAIL |
    2 tests, 1 passed, 1 failed
    ==============================================================================
    Tests                                                                 | FAIL |
    31 tests, 6 passed, 25 failed
    ==============================================================================
    Output:  /tmp/guix-build-python-robotframework-stacktrace-0.4.1.drv-0/robotframework-stacktrace-0.4.1/output.xml
    Log:     /tmp/guix-build-python-robotframework-stacktrace-0.4.1.drv-0/robotframework-stacktrace-0.4.1/log.html
    Report:  /tmp/guix-build-python-robotframework-stacktrace-0.4.1.drv-0/robotframework-stacktrace-0.4.1/report.html
    error: in phase 'check': uncaught exception:
    %exception #<&invoke-error program: "python" arguments: ("-m" "robot" "tests") exit-status: 25 term-signal: #f stop-signal: #f> 
    phase `check' failed after 0.5 seconds
    command "python" "-m" "robot" "tests" failed with status 25
    

    Ideas?

    The only direct dependencies are [email protected] and [email protected].

    opened by Apteryks 0
Releases(0.4.1)
Owner
marketsquare
Robot Framework Community's shared code repositories
marketsquare
Pythonic event-processing library based on decorators

Process Events In Style This library aims to simplify the common pattern of event processing. It simplifies the process of filtering, dispatching and

Nicolas Marier 3 Sep 01, 2022
Python Telegram bot api.

pyTelegramBotAPI A simple, but extensible Python implementation for the Telegram Bot API. Getting started. Writing your first bot Prerequisites A simp

FrankWang 6.4k Jan 09, 2023
Mini Tool to lovers of debe from eksisozluk (one of the most famous website -reffered as collaborative dictionary like reddit- in Turkey) for pushing debe (Most Liked Entries of Yesterday) to kindle every day via Github Actions.

debe to kindle Mini Tool to lovers of debe from eksisozluk (one of the most famous website -refered as collaborative dictionary like reddit- in Turkey

11 Oct 11, 2022
yobot插件,Steam雷达,可自动播报玩家的Steam游戏状态和DOTA2图文战报

Steam_watcher 这是 prcbot/yobot 的自定义插件,可自动播报玩家的Steam游戏状态和DOTA2图文战报 都有些什么功能? 本插件可以在用户绑定后自动推送Steam游戏状态的更新和 Dota2 图文战报,以及提供一些手动查询功能 指令列表 atbot 表示需要@BOT ats

羽波 21 Jun 21, 2022
Deploy your apps on any Cloud provider in just a few seconds

The simplest way to deploy your apps in the Cloud Deploy your apps on any Cloud providers in just a few seconds ⚡ Qovery Engine is an open-source abst

Qovery 1.9k Dec 26, 2022
An Open Source ALL-In-One Telegram RoBot, that can do lot of things.

An Open Source ALL-In-One Telegram RoBot, that can do lot of things.

JOBIN 0 Dec 01, 2021
A community made discord bot coded in Python and running on AWS.

Pogbot Project Open Group Discord This is an open source community ran project. Join the discord for more information on how to participate. Coded in

Project Open Group 2 Jul 27, 2022
Elemeno.ai standard development kit in Python

Overview A set of glue code and utilities to make using elemeno AI platform a smooth experience Free software: Apache Software License 2.0 Installatio

Elemeno AI 3 Dec 14, 2022
Multi Account Generator Minecraft/NordVPN/Hulu/Origin And ...

Multi Account Generator Minecraft/NordVPN/Hulu/Origin And ...

76 Jan 01, 2023
Find the best repos to contribute to, right from Discord!

repo-finder-bot Find the best repos to contribute to, right from Discord! Add to your server FAQs Hmm. What's this? This is the Repo Finder Bot, a bot

Skyascii 61 Dec 25, 2022
Images to PDF Telegram Bot

ilovepdf Convert Images to PDF Bot This bot will helps you to create pdf's from your images [without leaving telegram] 😉 By Default: your pdf fil

✰Naͥbiͣlͫ A Navab✰ 116 Dec 29, 2022
Neko is An Anime themed advance Telegram group management bot.

NekoRobot A modular telegram Python bot running on python3 with an sqlalchemy, mongodb database. ╒═══「 Status 」 Maintained Support Group Included Free

Lovely Prince 11 Oct 11, 2022
Moon-TikTok-Checker - A TikTok Username checking tool that probably 3/4 people use to get rare usernames

Moon Checker (educational Purposes Only) What Is Moon Checker? This is a TikTok

glide 4 Nov 30, 2022
Telegram Group Management Bot based on Pyrogram

Komi-San Telegram Group Management Bot based on Pyrogram More updates coming soon Support Group Open a Pull request if you wana contribute Example for

33 Nov 07, 2022
Contrastive Language-Audio Pretraining

CLAP Contrastive Language-Audio Pretraining In due time this repo will be full of lovely things, I hope. Feel free to check out the Issues if you're i

Charles Foster 83 Dec 01, 2022
A custom Discord Rich Presence to display when you're studying so you're stupid friends won't disturb you when you're studying.

Studying RPC Description A custom Discord Rich Presence to display when you're studying so you're stupid friends won't disturb you when you're studyin

John Edmerson Pizarra 4 Nov 19, 2022
1.本项目采用Python Flask框架开发提供(应用管理,实例管理,Ansible管理,LDAP管理等相关功能)

op-devops-api 1.本项目采用Python Flask框架开发提供(应用管理,实例管理,Ansible管理,LDAP管理等相关功能) 后端项目配套前端项目为:op-devops-ui jenkinsManager 一.插件python-jenkins bug修复 (1).插件版本 pyt

3 Nov 12, 2021
Powerful and Async API for AnimeWorld.tv 🚀

Powerful and Async API for AnimeWorld.tv 🚀

1 Nov 13, 2021
This bot will automatically like and follow users that post under a specified hashtag

Instagram-bot This bot will automatically like and follow users that post under a specified hashtag Dependencies Java JDK Selenium Updated version of

Makana Edwards 1 Nov 04, 2021
The successor of GeoSnipe, a pythonic Minecraft username sniper based on AsyncIO.

OneSnipe The successor of GeoSnipe, a pythonic Minecraft username sniper based on AsyncIO. Documentation View Documentation Features • Mojang & Micros

1 Jan 14, 2022