robotframework-stacktrace


Namerobotframework-stacktrace JSON
Version 0.4.1 PyPI version JSON
download
home_pagehttps://github.com/MarketSquare/robotframework-stacktrace
SummaryA listener that prints a Stack Trace to console to faster find the code section where the failure appears.
upload_time2021-07-12 18:04:24
maintainer
docs_urlNone
authorRené Rohner(Snooz82)
requires_python>=3.6
license
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 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

```shell
pip install robotframework-stacktrace
```

## Usage

```shell
robot --listener RobotStackTracer <your file.robot>
```

### Example

Old Console Output:

```commandline
❯ robot -d logs TestCases/14_Browser/01_CarConfig.robot
==============================================================================
01 CarConfig
==============================================================================
Configure Car with Pass                                               | FAIL |
TimeoutError: page.selectOption: Timeout 3000ms exceeded.
=========================== logs ===========================
waiting for selector ""Basismodell" >> ../.. >> select"
  selector resolved to visible <select _ngcontent-c7="" class="maxWidth ng-untouched ng…>…</select>
  selecting specified option(s)
    did not find some options - waiting...
============================================================
Note: use DEBUG=pw:api environment variable to capture Playwright logs.
------------------------------------------------------------------------------
Configure Car with wrong Acc                                          | FAIL |
TimeoutError: page.check: Timeout 3000ms exceeded.
=========================== logs ===========================
waiting for selector "//span[contains(text(),'aABS')]/../input"
============================================================
Note: use DEBUG=pw:api environment variable to capture Playwright logs.
------------------------------------------------------------------------------
Configure Car with car Acc                                            | FAIL |
TimeoutError: page.click: Timeout 3000ms exceeded.
=========================== logs ===========================
waiting for selector "[href="/config/summary/wrong"]"
============================================================
Note: use DEBUG=pw:api environment variable to capture Playwright logs.
------------------------------------------------------------------------------
01 CarConfig                                                          | FAIL |
3 tests, 0 passed, 3 failed
==============================================================================
Output:  /Source/RF-Schulung/02_RobotFiles/logs/output.xml
Log:     /Source/RF-Schulung/02_RobotFiles/logs/log.html
Report:  /Source/RF-Schulung/02_RobotFiles/logs/report.html
```

New Stack Trace Output

```commandline
❯ robot -d logs --listener RobotStackTracer TestCases/14_Browser/01_CarConfig.robot
==============================================================================
01 CarConfig
==============================================================================
Configure Car with Pass                                               ...
  Traceback (most recent call last):
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    File  /Source/RF-Schulung/02_RobotFiles/TestCases/14_Browser/01_CarConfig.robot:23
    T:  Configure Car with Pass
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    File  /Source/RF-Schulung/02_RobotFiles/TestCases/14_Browser/01_CarConfig.robot:28
      Select aMinigolf as model
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    File  /Source/RF-Schulung/02_RobotFiles/TestCases/14_Browser/functional_keywords.resource:14
      Select Options By    ${select_CarBaseModel}    text    ${basemodel}
      |  ${select_CarBaseModel} = "Basismodell" >> ../.. >> 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 <select _ngcontent-c7="" class="maxWidth ng-untouched ng…>…</select>
  selecting specified option(s)
    did not find some options - waiting...
============================================================
Note: use DEBUG=pw:api environment variable to capture Playwright logs.
------------------------------------------------------------------------------
Configure Car with wrong Acc                                          ....
  Traceback (most recent call last):
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    File  /Source/RF-Schulung/02_RobotFiles/TestCases/14_Browser/01_CarConfig.robot:38
    T:  Configure Car with wrong Acc
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    File  /Source/RF-Schulung/02_RobotFiles/TestCases/14_Browser/01_CarConfig.robot:43
      Select Accessory    aABS
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    File  /Source/RF-Schulung/02_RobotFiles/TestCases/14_Browser/functional_keywords.resource:38
      Check Checkbox    //span[contains(text(),'${accessory}')]/../input
      |  //span[contains(text(),'${accessory}')]/../input = //span[contains(text(),'aABS')]/../input (str)
______________________________________________________________________________
Configure Car with wrong Acc                                          | FAIL |
TimeoutError: page.check: Timeout 3000ms exceeded.
=========================== logs ===========================
waiting for selector "//span[contains(text(),'aABS')]/../input"
============================================================
Note: use DEBUG=pw:api environment variable to capture Playwright logs.
------------------------------------------------------------------------------
Configure Car with car Acc                                            ..
  Traceback (most recent call last):
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    File  /Source/RF-Schulung/02_RobotFiles/TestCases/14_Browser/01_CarConfig.robot:51
    T:  Configure Car with car Acc
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    File  /Source/RF-Schulung/02_RobotFiles/TestCases/14_Browser/01_CarConfig.robot:62
      Set wrong Car Name    ${car}
      |  ${car} = My New Car (str)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    File  /Source/RF-Schulung/02_RobotFiles/TestCases/14_Browser/functional_keywords.resource:53
      Click    ${car_name}
      |  ${car_name} = [href="/config/summary/wrong"] (str)
______________________________________________________________________________
Configure Car with car Acc                                            | FAIL |
TimeoutError: page.click: Timeout 3000ms exceeded.
=========================== logs ===========================
waiting for selector "[href="/config/summary/wrong"]"
============================================================
Note: use DEBUG=pw:api environment variable to capture Playwright logs.
------------------------------------------------------------------------------
01 CarConfig                                                          | FAIL |
3 tests, 0 passed, 3 failed
==============================================================================
Output:  /Source/RF-Schulung/02_RobotFiles/logs/output.xml
Log:     /Source/RF-Schulung/02_RobotFiles/logs/log.html
Report:  /Source/RF-Schulung/02_RobotFiles/logs/report.html
```


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/MarketSquare/robotframework-stacktrace",
    "name": "robotframework-stacktrace",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": "",
    "keywords": "",
    "author": "Ren\u00e9 Rohner(Snooz82)",
    "author_email": "snooz@posteo.de",
    "download_url": "https://files.pythonhosted.org/packages/f6/cf/6e6934c3d037ef3f5914e88494127ec4d0fea73bd566539e08b9fa2c9324/robotframework-stacktrace-0.4.1.tar.gz",
    "platform": "",
    "description": "# robotframework-stacktrace\nA listener for RF >= 4.0 that prints a Stack Trace to console to faster find the code section where the failure appears.\n\n## Installation\n\n```shell\npip install robotframework-stacktrace\n```\n\n## Usage\n\n```shell\nrobot --listener RobotStackTracer <your file.robot>\n```\n\n### Example\n\nOld Console Output:\n\n```commandline\n\u276f robot -d logs TestCases/14_Browser/01_CarConfig.robot\n==============================================================================\n01 CarConfig\n==============================================================================\nConfigure Car with Pass                                               | FAIL |\nTimeoutError: page.selectOption: Timeout 3000ms exceeded.\n=========================== logs ===========================\nwaiting for selector \"\"Basismodell\" >> ../.. >> select\"\n  selector resolved to visible <select _ngcontent-c7=\"\" class=\"maxWidth ng-untouched ng\u2026>\u2026</select>\n  selecting specified option(s)\n    did not find some options - waiting...\n============================================================\nNote: use DEBUG=pw:api environment variable to capture Playwright logs.\n------------------------------------------------------------------------------\nConfigure Car with wrong Acc                                          | FAIL |\nTimeoutError: page.check: Timeout 3000ms exceeded.\n=========================== logs ===========================\nwaiting for selector \"//span[contains(text(),'aABS')]/../input\"\n============================================================\nNote: use DEBUG=pw:api environment variable to capture Playwright logs.\n------------------------------------------------------------------------------\nConfigure Car with car Acc                                            | FAIL |\nTimeoutError: page.click: Timeout 3000ms exceeded.\n=========================== logs ===========================\nwaiting for selector \"[href=\"/config/summary/wrong\"]\"\n============================================================\nNote: use DEBUG=pw:api environment variable to capture Playwright logs.\n------------------------------------------------------------------------------\n01 CarConfig                                                          | FAIL |\n3 tests, 0 passed, 3 failed\n==============================================================================\nOutput:  /Source/RF-Schulung/02_RobotFiles/logs/output.xml\nLog:     /Source/RF-Schulung/02_RobotFiles/logs/log.html\nReport:  /Source/RF-Schulung/02_RobotFiles/logs/report.html\n```\n\nNew Stack Trace Output\n\n```commandline\n\u276f robot -d logs --listener RobotStackTracer TestCases/14_Browser/01_CarConfig.robot\n==============================================================================\n01 CarConfig\n==============================================================================\nConfigure Car with Pass                                               ...\n  Traceback (most recent call last):\n    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n    File  /Source/RF-Schulung/02_RobotFiles/TestCases/14_Browser/01_CarConfig.robot:23\n    T:  Configure Car with Pass\n    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n    File  /Source/RF-Schulung/02_RobotFiles/TestCases/14_Browser/01_CarConfig.robot:28\n      Select aMinigolf as model\n    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n    File  /Source/RF-Schulung/02_RobotFiles/TestCases/14_Browser/functional_keywords.resource:14\n      Select Options By    ${select_CarBaseModel}    text    ${basemodel}\n      |  ${select_CarBaseModel} = \"Basismodell\" >> ../.. >> select (str)\n      |  ${basemodel} = aMinigolf (str)\n______________________________________________________________________________\nConfigure Car with Pass                                               | FAIL |\nTimeoutError: page.selectOption: Timeout 3000ms exceeded.\n=========================== logs ===========================\nwaiting for selector \"\"Basismodell\" >> ../.. >> select\"\n  selector resolved to visible <select _ngcontent-c7=\"\" class=\"maxWidth ng-untouched ng\u2026>\u2026</select>\n  selecting specified option(s)\n    did not find some options - waiting...\n============================================================\nNote: use DEBUG=pw:api environment variable to capture Playwright logs.\n------------------------------------------------------------------------------\nConfigure Car with wrong Acc                                          ....\n  Traceback (most recent call last):\n    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n    File  /Source/RF-Schulung/02_RobotFiles/TestCases/14_Browser/01_CarConfig.robot:38\n    T:  Configure Car with wrong Acc\n    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n    File  /Source/RF-Schulung/02_RobotFiles/TestCases/14_Browser/01_CarConfig.robot:43\n      Select Accessory    aABS\n    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n    File  /Source/RF-Schulung/02_RobotFiles/TestCases/14_Browser/functional_keywords.resource:38\n      Check Checkbox    //span[contains(text(),'${accessory}')]/../input\n      |  //span[contains(text(),'${accessory}')]/../input = //span[contains(text(),'aABS')]/../input (str)\n______________________________________________________________________________\nConfigure Car with wrong Acc                                          | FAIL |\nTimeoutError: page.check: Timeout 3000ms exceeded.\n=========================== logs ===========================\nwaiting for selector \"//span[contains(text(),'aABS')]/../input\"\n============================================================\nNote: use DEBUG=pw:api environment variable to capture Playwright logs.\n------------------------------------------------------------------------------\nConfigure Car with car Acc                                            ..\n  Traceback (most recent call last):\n    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n    File  /Source/RF-Schulung/02_RobotFiles/TestCases/14_Browser/01_CarConfig.robot:51\n    T:  Configure Car with car Acc\n    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n    File  /Source/RF-Schulung/02_RobotFiles/TestCases/14_Browser/01_CarConfig.robot:62\n      Set wrong Car Name    ${car}\n      |  ${car} = My New Car (str)\n    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n    File  /Source/RF-Schulung/02_RobotFiles/TestCases/14_Browser/functional_keywords.resource:53\n      Click    ${car_name}\n      |  ${car_name} = [href=\"/config/summary/wrong\"] (str)\n______________________________________________________________________________\nConfigure Car with car Acc                                            | FAIL |\nTimeoutError: page.click: Timeout 3000ms exceeded.\n=========================== logs ===========================\nwaiting for selector \"[href=\"/config/summary/wrong\"]\"\n============================================================\nNote: use DEBUG=pw:api environment variable to capture Playwright logs.\n------------------------------------------------------------------------------\n01 CarConfig                                                          | FAIL |\n3 tests, 0 passed, 3 failed\n==============================================================================\nOutput:  /Source/RF-Schulung/02_RobotFiles/logs/output.xml\nLog:     /Source/RF-Schulung/02_RobotFiles/logs/log.html\nReport:  /Source/RF-Schulung/02_RobotFiles/logs/report.html\n```\n\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "A listener that prints a Stack Trace to console to faster find the code section where the failure appears.",
    "version": "0.4.1",
    "project_urls": {
        "Homepage": "https://github.com/MarketSquare/robotframework-stacktrace"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4ef2be7d680eb8a23e86ea288f6c421e1e8c30c823a8f1521dc6b9f9d7b7692b",
                "md5": "bb58f2d35feaaf0e472c8b7d8c3f8904",
                "sha256": "018d7a55b99733e64e3cc0b134771b61a47de61de23609ed35c7bf0a53e9290e"
            },
            "downloads": -1,
            "filename": "robotframework_stacktrace-0.4.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "bb58f2d35feaaf0e472c8b7d8c3f8904",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 8543,
            "upload_time": "2021-07-12T18:04:22",
            "upload_time_iso_8601": "2021-07-12T18:04:22.850788Z",
            "url": "https://files.pythonhosted.org/packages/4e/f2/be7d680eb8a23e86ea288f6c421e1e8c30c823a8f1521dc6b9f9d7b7692b/robotframework_stacktrace-0.4.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f6cf6e6934c3d037ef3f5914e88494127ec4d0fea73bd566539e08b9fa2c9324",
                "md5": "d653c647a37b3c1928fc205581db713b",
                "sha256": "e96cb36e7e9ab55104c1f7d3606249a109e0a4c3bb6a0e294bff07d54ee6f6a5"
            },
            "downloads": -1,
            "filename": "robotframework-stacktrace-0.4.1.tar.gz",
            "has_sig": false,
            "md5_digest": "d653c647a37b3c1928fc205581db713b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 12634,
            "upload_time": "2021-07-12T18:04:24",
            "upload_time_iso_8601": "2021-07-12T18:04:24.993863Z",
            "url": "https://files.pythonhosted.org/packages/f6/cf/6e6934c3d037ef3f5914e88494127ec4d0fea73bd566539e08b9fa2c9324/robotframework-stacktrace-0.4.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2021-07-12 18:04:24",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "MarketSquare",
    "github_project": "robotframework-stacktrace",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "robotframework-stacktrace"
}
        
Elapsed time: 0.29551s