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
A python library to interact with the EarnApp API

EarnApp.py Table of contents General info Documentation Setup General info A python library to interact with the EarnApp API. Documentation First, imp

3 Dec 14, 2022
An API Wrapper for Gofile API

Gofile2 from gofile2 import Gofile g_a = Gofile() print(g_a.upload(file="/home/itz-fork/photo.png")) An API Wrapper for Gofile API. About API Gofile

I'm Not A Bot #Left_TG 16 Dec 10, 2022
Pythonic wrapper for the Aladhan prayer times API.

aladhan.py is a pythonic wrapper for the Aladhan prayer times API. Installation Python 3.6 or higher is required. To Install aladhan.py with pip: pip

HETHAT 8 Aug 17, 2022
This is a Telegram Bot that tracks packages from the Brazilian Mail Service.

RastreioBot About Setup Run Contribute Contact About This is a Telegram Bot that tracks packages from the Brazilian Mail Service. It runs on Python 3

Gabriel R F 320 Dec 22, 2022
TORNADO CASH Pancakeswap Sniper BOT 2022-V1 (MAC WINDOWS ANDROID LINUX)

TORNADO CASH Pancakeswap Sniper BOT 2022-V1 (MAC WINDOWS ANDROID LINUX)

Crypto Trader 1 Jan 06, 2022
An alternative launcher for Lunar Client which is aimed at portability and functionality.

Portaluna An alternative launcher for Lunar Client which is aimed at portability and functionality. Features Portable. Lightweight. Functional. Note:

4 Mar 05, 2022
Paid Udemy Courses with Coupons

Freedemy Paid Udemy Courses with Coupons Steps to run pip3 install -r requirements.txt python3 free-courses.py Then you can click the Enroll Link and

GOKUL A.P 23 Dec 14, 2022
This is a Innexia Group Manager Bot with many features

⚡ Innexia ⚡ A Powerful, Smart And Simple Group Manager ... Written with AioGram , Pyrogram and Telethon... Available on Telegram as @Innexia ❤️ Suppor

TeamDeeCode 84 Jun 04, 2022
Api REST para gerenciamento de cashback.

Documentação API para gerenciamento de cashback - MaisTODOS Features Em construção... Tecnologias utilizadas Back end Python 3.8.10 Django REST Framew

Alinne Grazielle 2 Jan 22, 2022
Google Sheets Python API v4

pygsheets - Google Spreadsheets Python API v4 A simple, intuitive library for google sheets which gets your work done. Features: Open, create, delete

Nithin Murali 1.4k Jan 08, 2023
PyMusic Player is a music player written in python3.

PyMusic Player is a music player written in python3. It harvests r

PythonSerious 2 Jan 30, 2022
A working bypass for discord gc spamming

IllusionGcSpammer A working bypass for discord gc spamming Installation Run pip install pip install DiscordGcSpammer then your good to go. Usage You c

6 Sep 30, 2022
Tweet stream in OBS browser source

Tweetron TweetronはOBSブラウザーソースを使用してツイートを画面上に表示するツールソフトです Windowsのみ対応 (Windows10動作確認済) ダウンロード こちらから最新版をダウンロードしてください (現在ベータテスト版を配布しています) Download ver0.0.

Cube 0 Apr 05, 2022
vk.com API python wrapper

Python vk.com API wrapper This is a vk.com (the largest Russian social network) python API wrapper. The goal is to support all API methods (current an

Dmitry Voronin 371 Dec 29, 2022
A Telegram bot to extracting text from images. All languages supported.

OCR Bot A Telegram bot to extracting text from images. All languages supported. Deploy to Heroku Local Deploying Clone the repo git clone https://gith

6 Oct 21, 2022
A qq bot based on nonebot2 and go-cqhttp

Asoul-bot A qq bot based on nonebot and go-cqhttp 你可以将bot部署在本地,也可以加入bot测试群:784280070(全体禁言) 你可以通过临时会话的方式向bot发送指令,输入help获取帮助菜单 本地部署请参考:https://zhuanlan.

11 Sep 23, 2022
A Bot that Forwards Tweets to Telegram using Airtable as a database.

Twitter Telegram Forward A Bot that Forwards Tweets to Telegram using Airtable as a Database. Features: Handles multiple twitter and telegram channels

George Bakev 3 Dec 21, 2022
iCloudPy is a simple iCloud webservices wrapper library written in Python

iCloudPy 🤟 Please star this repository if you end up using the library. It will help me continue supporting this product. 🙏 iCloudPy is a simple iCl

Mandar Patil 49 Dec 26, 2022
a discord libary that use to make discord bot with low efficiency and bad performance because I don't know how to manage the project

Aircord 🛩️ a discord libary that use to make discord bot with low efficiency and bad performance because I don't know how to manage the project Examp

Aircord 2 Oct 24, 2021
A smooth and powerful Telegram Userbot made to make Telegram easier.

| Xᴇɴᴏ Bᴏᴛ Is One Of The Fastest & Smoothest Bot On Telegram Based on Telethon|

SimpleBoy 1 Dec 01, 2021